撩课-JavaWeb之开发步骤与DAO代码重构

开发步骤

	1.创建表
	2.建立domain包和domain类
	3.建立dao包和dao接口
	4.建立dao.impl包和dao实现类
	5.根据dao接口创建dao测试类
	6.编写实现类当中dao的声明的方法体
	7.每编写一个dao方法,进行测试功能是否正确

创建包
撩课-JavaWeb之开发步骤与DAO代码重构

内部结构
撩课-JavaWeb之开发步骤与DAO代码重构

编写实现类方法体

保存方法
撩课-JavaWeb之开发步骤与DAO代码重构

删除方法
撩课-JavaWeb之开发步骤与DAO代码重构

修改方法
撩课-JavaWeb之开发步骤与DAO代码重构

获取一个学生
撩课-JavaWeb之开发步骤与DAO代码重构

获取所有学生
撩课-JavaWeb之开发步骤与DAO代码重构

DAO代码重构

1.每一个DAO方法当中都会写驱动名称、url、用户名、密码
		把公共的这些声明为成员变量
		在一个类当中能够共享这些成员变量

解决示例
撩课-JavaWeb之开发步骤与DAO代码重构

2.每个DAO当中都会相同的4行代码。
		抽取到一个公共类JdbcUtil当中

撩课-JavaWeb之开发步骤与DAO代码重构

3.每个dao方法每次操作只需要connection对象,至于是怎么样创建的不关心
		把创建Connection代码抽取到jdbcUtil当中
		并提供一个getConn就能够获得连接对象

撩课-JavaWeb之开发步骤与DAO代码重构

4.每次调用getConn就会创建一个Connection对象,但不需要每次都注册驱动
		把加载驱动放到静态代码块当中
		只会在类被加载到JVM时,才会执行一次

撩课-JavaWeb之开发步骤与DAO代码重构

5.每个dao方法都要关闭资源
		在util当中提供一个方法专门关闭资源
		在方法当中传入要关闭哪些资源

撩课-JavaWeb之开发步骤与DAO代码重构

6.DAO方法中,拼接SQL太麻烦
		要使用预编译语句对象
7.DAO方法当中每次都创建一个connection对象,用完就关闭了,创建Connection成本很大
		通过数据库连接池来解决
8.jdbcUtil当中的用户名,密码这些信息都写到了文件当中,不便于维护
		给写到一个单独的配置文件当中