预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

1、课程名称:实例讲解 2、题目要求 现在要求使用JDBC完成雇员表的CRUD操作,使用emp表中的如下字段:empno、ename、job、hiredate、sal、comm。 完成的功能:增加数据、修改数据、删除数据、模糊查询数据(数据的部分显示),查询全部数据量,可以根据编号查询一个雇员的信息。 3、代码开发 3.1、开发口诀 为了保证可以快速的上手开发,下面给出一些基本的思考步骤: 1、 类的开发要求: ·要根据需求写类的名称,根据要求编写属性,所有的属性必须封装,封装之后的属性如果需要设置和取得的话,则编写setter和getter方法。 ·类中可以编写构造方法,通过构造设置内容,但是必须保证一个类(简单类)中不管有多少个构造,一定要保留有一个无参构造方法,而且如果有多个构造的话,就需要按照参数的个数排列。 ·一个类永远不能去继承一个已经实现好的类,而只能继承抽象类或实现接口 ·当抽象类和接口都可以使用的时候优先考虑接口 ·没有包的类是不存在的,每个类都必须放在一个包之中 ·异常处理的标准格式 ·以后碰见取得接口实例化操作的时候一定要通过工厂返回 ·看见集合想都不想使用Iterator接口输出 2、 设计要求: ·一个程序开发的时候一定要先设置标准,标准就是接口。 ·各个类之间靠接口进行交互,接口是进行解耦合操作的。 ·主方法中代码越少越简单越好,一般主方法中是不允许导入java.sql包的。 ·根据要求细分类的组成,类的设计原则跟现实生活是一样的。 ·在进行JDBC的操作中只能使用PreparedStatement接口。 3.2、分析题目 现在操作的是数据库中的表,那么既然是表的话,肯定属于资源层的操作,数据库实际上操作的都是数据,对于这种操作数据的开发的程序,我们可以将其称为数据访问对象(DataAccessObject,DAO)。 之后又发现,表的组成感觉和类的组成非常的相似。 ·表  类 ·数据  对象 从这种对应关系上可以发现,一个对象实际上就可以表示每一条记录。 现在将一张表通过一个类的形式映射出来: ·emp表  Emp类 不管以后如何操作每一个Emp的对象肯定都表示一张表的一条记录,储存的是值,既然是值,就可以将其用另外一个名字替代:VO(ValueObject,值对象)。 接口的命名规范和类的命名规范是完全一样的,那么如果现在给出一个EmpDAO。那么为了区分,在接口前加一个字母“I”,所以接口:IEmpDAO。 对于数据库而言程序中关心的就是CRUD,其中增加、修改、删除都属于数据库的更新操作,而查询属于另外一种操作,那么如果以后要想从方法中区分两种类型的不同,就给出一个命名规范: ·所有的更新操作的方法命名格式:doXxx() ·所有查询操作的方法命名格式:findXxx()、getXxx() packageorg.lxh.oracle.dao; importjava.util.List; importorg.lxh.oracle.vo.Emp; publicinterfaceIEmpDAO{ /** *完成数据库的增加操作 *@paramemp增加的VO对象,里面保存着具体的内容 *@return是否成功的标记 *@throwsException如果有异常交给被调用处处理 */ publicbooleandoCreate(Empemp)throwsException; /** *完成数据库的修改操作 *@paramemp增加的VO对象,里面保存着具体的内容 *@return是否成功的标记 *@throwsException如果有异常交给被调用处处理 */ publicbooleandoUpdate(Empemp)throwsException; /** *数据库的删除操作 *@paramempno要删除的编号 *@return是否删除成功的标记 *@throwsException有异常交给被调用处处理 */ publicbooleandoDelete(intempno)throwsException; /** *根据编号查询单条记录 *@paramempno雇员编号 *@return一个对象,如果没有查询到返回null *@throwsException如果有异常交给被调用处处理 */ publicEmpfindById(intempno)throwsException; /** *查询全部记录 *@paramkeyWord查询关键字 *@return查询的结果集 *@throwsException */ publicList<Emp>