1. JDBC_PreparedStatement插入大量数据_批处理插入_效率比较
(1) jdbc新增大量数据时, 如何处理能提高效率?
答:使用批处理提高效率
(2) 什么是批处理? JDBC如何进行批处理?
答:批处理:在与数据库的一次连接中,批量的执行条 SQL 语句。
使用addBatch()方法将多条sql语句缓存起来
再使用executeBatch()方法将多条sql语句一同执行。
2. JDBC_ORM_使用Map封装查询记录
(1) 什么是ORM?
答:ORM(Object Relation Mapping) 指对象和关系型数据库的映射。
(2) ORM解决的主要问题是什么?
答:将数据库中的数据信息封存到对象中,便于查询
3. JDBC_ORM_认识分层开发_包结构
(1) 什么是分层开发, 为什么要进行分层开发?
答:应用程序通过创建不同的包来实现项目的分层,将项目中的代码根据功能做具体划分,
并存放在不同的包下。
进行分层的优点和原因:
1、分层结构将应用系统划分为若干层,每一层只解决问题的一部分,通过各层的协作
提供整体解决方案。大的问题被分解为一系列相对独立的子问题,局部化在每一层中,这样就有效的降低了单个问题的规模和复杂度,实现了复杂系统的第一步也是最为关键的一步分解。
2、分层结构具有良好的可扩展性,为应用系统的演化增长提供了一个灵活的支持,具
有良好的可扩展性。增加新的功能时,无须对现有的代码做修改,业务逻辑可以得到最大限
度的重用。
3、分层架构易于维护。在对系统进行分解后,不同的功能被封装在不同的层中,层与
之间的耦合显著降低。因此在修改某个层的代码时,只要不涉及层与层之间的接口,就不会对其他层造成严重影响。
4. JDBC_分层开发_环境搭建
(1) 什么是POJO?
答:POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称。
(2) 实体类有哪些特点?
答:1.实体类的属性一般使用private修饰
2.根据业务需要和封装性要求对实体类的属性提供get/set方法,负责属性的读取和赋值,一般用public修饰
3.对实体类提供无参构造方法,根据业务需要提供相应的有参构造方法
4.实现类最好实现java.io.Serializable接口,支持序列化机制,可以将该对象转换成字节序列而保存在磁盘上或在网络上传输
5.如果实体类实现了java.io.Serializable接口,就应该定义属性serialVersionUID,解决不同版本之间的序列化问题
5. 分层开发_抽取BaseDao_封装update方法
(1) 代码抽取有几种方式? 应该遵循什么原则?
答:应该将代码有共性的地方抽取出来进行封装,再方便重复调用,省去多余操作。
6. 分层开发_完成增删改操作
(1) JDBC实现增删改操作时有哪些注意事项?
答:JDBC执行DML操作时要仔细检查sql语句,确保正确,增加使用insert
删除使用delete,更改使用update
(2) 简述JDBC中对事务的管理方式.
答:JDBC中默认是自动提交事务,我们也可以使用setAutoCommit()方法将其调为手动提交,这样当系统运行时出现异常,还可以进行rollBack()回滚操作。
7. 分层开发_使用BeanUtils封装查询方法
(1) 如何理解java的反射机制?
答:JAVA反射机制是在运行状态中,对于任意一个实体类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。
(2) ResultSetMetaData有什么功能?
答:该接口下的方法主要用于处理结果集。
使用该接口下的getColumnCount()方法能得到结果集对象中的列数
使用getColumnName()方法可以得到指定列的名称