欢迎来到天天文库
浏览记录
ID:6689754
大小:36.50 KB
页数:10页
时间:2018-01-22
《dao设计模式(例子)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、DAO设计模式(例子)DAO设计模式1:为什么使用DAO?a:在涉及数据库操作,以前一般使用jdbc,使用这种方法我们会发现代码和html标签同时使用,维护很困难。b:jsp文件中不应该出现任何sql包,jsp文件侧重于显示界面的。c:所有的数据库操作建议使用prepareStatement。好处重在避免sql注入漏洞。2:DAO是J2EE中的数据层操作。3:数据库创建脚本--删除表DROPTABLEperson;--创建表CREATETABLEperson(idvarchar(20)notnullprimarykey,namevarch
2、ar(20)notnull,passwordvarchar(20)notnull,agevarchar(20)notnull,emailvarchar(30)notnull);--事务提交commit;4:如果在数据库修改后,我们怎么样才能做到前台页面不需要太多的改变?我们必须规定出对PERSON中的全部操作。比如增删查改。按照以上要求,制定出操作那张表的标准,之后只要针对不同的数据库实现这些标准就可以了。在java中我们可以通过接口来实现----》DAO规定的就是这些接口。packagecom.nnu.djx.dao;importcom
3、.nnu.djx.vo.*;importjava.util.*;//规定了在此项目中操作person表的全部方法publicinterfacePersonDao{/***//***//***//***插入对象*@throwsException*/publicvoidinsert(Personperson)throwsException;/***//***//***//***更新对象*@throwsException*/publicvoidupdate(Personperson)throwsException;/***//***//***/
4、/***删除某一对象*@paramid*@throwsException**/publicvoiddelete(Stringid)throwsException;/***//***//***//***按照ID查询*@paramid*@return*@throwsException**/publicPersonqueryById(Stringid)throwsException;/***//***//***//***查询全部结果*@return*@throwsException*/publicListqueryAll()throwsExce
5、ption;/***//***//***//***模糊查询*@paramcode*@return*@throwsException*/publicListqueryByLike(Stringcode)throwsException;}5:在DAO中操作的是对象和数据库之间的关系。不过此时的对象是(VO,POLO,TO)(值对象,最简单对象,传输对象)即是只包括getter,setter方法的类。通过VO操作DAOVo中的字段和表中一一对应。packagecom.nnu.djx.vo;publicclassPerson{privateStr
6、ingid;privateStringname;privateStringpassword;privateintage;privateStringemail;//生成getter,setter方法。publicintgetAge(){returnage;}publicvoidsetAge(intage){this.age=age;}publicStringgetEmail(){returnemail;}publicvoidsetEmail(Stringemail){this.email=email;}publicStringgetId()
7、{returnid;}publicvoidsetId(Stringid){this.id=id;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publicStringgetPassword(){returnpassword;}publicvoidsetPassword(Stringpassword){this.password=password;}}6:对于定义好的接口,需要给出具体实现。对数据库表的一切具体操作。可以定义一
8、个数据库链接类,只负责连接。packagecom.nnu.djx.dao.impl;importjava.util.List;importcom.nnu.djx.dao.*;importcom
此文档下载收益归作者所有