一、使用JDBC连接数据库
1、加载JDBC驱动程序。
Class.forName("com.mysql.jdbc.Driver");
2、建立连接,通过DriverManager类的getConnection方法建立连接时,需要注意getConnection会抛出SQLException异常,需要在try/catch块中捕获。
Connection conn = DriverManager.getConnection(url, user, password);
3、创建Statement对象,用来向数据库发送查询和命令,它由Connection的createStatement方法创建。
Statement stmt = connection.createStatement();
4、结果集处理,处理结果最简单的方式是使用ResultSet的next方法在表中移动,每次移动一行,在每一行中,ResultSet提供了各种getX方法。
rs = pstmt.executeQuery();
while(rs.next()) {
manageNum = rs.getInt(1);
}
5、关闭连接,关闭连接的同时,也要关闭对应的Statement和ResultSet对象。
finally{
if(null != conn) {
conn.close();
}
}
二、PreparedStatement与Statement相比,具有什么优势?
1、优点:语句只编译一次,减少编译次数。提高了安全性,如用在登录上。
2、缺点:执行非相似SQL语句时,速度较慢。
3、原理:相似的SQL只编译一次,减少编译次数。
4、
三、什么是持久化?
1)狭义的理解就是把数据永久的保存在数据库中。
2)广义上的理解指包括数据库相关的各种操作。包括保存、更新、删除和查找等。
四、什么是DAO
1、DAO是Data Access Object 数据存取对象。
2、数据访问接口,所以它就是和数据库打交道的。
3、位于业务逻辑和持久数据之间。
4、实现对持久化数据的访问。
5、隔离业务逻辑代码和数据访问代码,隔离不同数据库的实现。
五、DAO模式的组成部分0
1)DAO接口
2)DAO实现类
3)实体类
4)数据库连接和关闭工具类
六、DAO使用步骤
1)建立数据库epet,建表;
2)创建实体类,和相应的数据库的表是对应的
com.beiwo.epet.entity
3)创建Dao的基类接口类
BaseDao;com.beiwo.epet.dao.BaseDao
4)创建Dao的实现类
BaseDaoImpl;com.beiwo.epet.dao.impl.BaseDaoImpl
5)创建具体表的Dao类
PetDao;com.beiwo.epet.dao.PetDao
6)创建具体表的Dao实现类
PetDaoMysqlImpl;com.beiwo.epet.dao.impl.PetDaoMysqlImpl
7)创建业务逻辑层的接口类
PetService;com.beiwo.epet.service.PetService
8)创建业务逻辑层的接口实现类
PetServiceImpl;com.beiwo.epet.service.impl.PetServieImpl
9)创建测试类。
七、分层开发的特点
1、每一层都有自己的职责
2、上一层调用下一层的功能,下一层不能调用上一层功能
八、分层开发的优势及原则
1、便于提高开发质量、提高开发效率、便于代码服用、便于程序扩展和便于降低代码的耦合性。
2、分层时应坚持封装性原则和顺序访问原则。
3、不同层之间通过实体类传输数据。