第二天写博客
今天主要是整理一下struts视频中简单的查询部分,其实这不是第一次看了,不同的是这次是动了手的,虽然距离第一次看的时间还不长,但是看起来还像是新知识,几度抓狂还好,最好把结果做出来了,小有成就,虽然是一样的东西,但是每次都有不一样的感觉,下午一边码一边怀疑自己是否真的已经过了一遍,严重鄙视脑容量,进入正题:
第一步:编写实体类
根据数据表将表中字体声明成实体类的属性变量,并添加其setter和getter方法,其中涉及到数值型变量,最好要用封装型类型,如Integer而非int(防止查询结果为空的情况),另外,涉及到时间类型变量时,如果格式只是年月日则用java..sql.Date,如果涉及时分秒则最好用TimeStamp类型。
第二步:编写接口XXXDAO
定义public类型的方法,为其判断输入属性和输出属性,一般用于查询记录的方法是List<Entity>返回类型,一定要抛出异常(自定义异常:定义一个类,继承Exception类,重写其有两个参数的构造方法--先凑合记)。
第三步:编写第二步接口的实现类
继承接口,实现其方法。因为查询结果最后要返回的是实体对象列表,所以还需要在此类中添加toEntity()方法。标准书写格式:最前面要用静态的常量将用到的sql语句封装起来
今天只学了这些,写的乱七八糟,加油!
甜点:(1)在这个项目在用的是工厂模式,所以要定义一个DAOFactory类,在该类中定义EntityDao 类型的entity变量,添加其getter方法,在以后 的使用在直接用工厂类茯得。
(2)在进行数据库连接时,用了一种新的方法,在src下 定义一个db.properties参数文件,其中放置数据连接的相关配置信息(driver,url,user,password),然后在DBUtils.java中获得配置信息,进行连接,定义getConnection()和closeConnection(Connection conn)两个方法,方便以后调用。注:在对数据库进行操作时所涉及的对象全部取于java.sql.*包中,而非jdbc包。
谨记:代码一定要常写常测!!!
明天见