- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
通用型DAO层使用泛型的
应用实例1
一、任务描述二、任务分析、设计三、任务实施四、运行结果本学习情境主要内容
3一、任务描述编写通用型DAO层应用程序任务需求:使用泛型机制编写通用型DAO层以实现对数据库表的CURD的操作。
二、任务分析、设计Bean(实体类),Book,Teacher,Student等DAO(数据访问层),BaseDAO,BookDAO,TeacherDAO等Impl(具体方法实现),BaseDAOImpl,BookDAOImpl,TeacherDAOImpl等JDBC(数据库连接类)Test(测试类)本实例中涉及的类和接口
其类图如图所示
DAO模式开发步骤(1)建立数据库,建表(2)创建实体类,和相应的数据库的表是对应的(3)创建Dao的基类接口(4)创建Dao的通用实现类(5)创建具体表的Dao类(6)创建具体表的Dao实现类(7)创建测试类
三、任务实施1.建立数据库,建表
2.创建实体类(对应数据库的表)publicclassBook{ intid; Stringname; Stringpublisher; Stringauthor;//省略setter和getter方法}
3.定义DAO的基接口BaseDAO使用泛型接口,声明CRUD方法,使用泛型方法
4.定义DAO的通用实现类//通用DAO的实现类publicclassBaseDaoImplTimplementsBaseDaoT{//添加 @Override publicbooleanadd(Tt){ }…}使用泛型类重写CRUD方法使用泛型方法
5.定义各个实体表的DAO接口publicinterfaceBookDAOextendsBaseDAOBook{}继承自BaseDAO接口,传递Book类型参数。可以声明自己独有的方法,如果没有就不写任何代码
publicinterfaceTeacherDaoextendsBaseDAOTeacher{}继承自BaseDAO接口,传递Teacher类型参数
6.定义具体表的Dao实现类publicclassBookDaoImplextendsBaseDaoImplBookimplementsBookDao{}继承BaseDAOImpl类,并传递Book类型参数,实现BookDAO接口
publicclassTeacherDaoImplextendsBaseDaoImplTeacherimplementsTeacherDao{}继承BaseDAOImpl类,并传递Teacher类型参数,实现TeacherDAO接口
7.创建测试类
首先使用BaseDAOImplTeacher创建TeacherDAOImpl的对象(其中传递Teacher类型参数),然后通过调用其findAll()方法,查询所有记录,最后遍历输出
首先使用BaseDAOImplTeacher创建TeacherDAOImpl的对象(其中传递Teacher类型参数),然后创建一个Teacher类的对象,最后通过TeacherDAOImpl的对象的add方法向数据库表teacher添加一行记录
首先使用BaseDAOImplStudent创建StudentDAOImpl的对象(其中传递Student类型参数),然后通过StudentDAOImpl的对象的findById方法从数据库表中查询id为2的记录,再进行修改最后通过StudentDAOImpl的对象的update方法进行更新
小结本学习情境通过一个实例讲述了DAO层使用泛型实现CRUD操作提高了代码复用,简化了代码
谢谢22
文档评论(0)