使用反射实现万能DAO(基于JDBC)
来源:互联网 发布:苹果系统装windows 编辑:程序博客网 时间:2024/05/19 15:42
1 没有利用反射来对数据库进行操作
创建工具类:JDBCConnection(使用单列设计模式)
创建IBaseDao接口(Dao中常用的操作方法)
创建IStudentDao接口,让其继承BaseDao接口
创建ITeacherDao接口,让其继承BaseDao接口
创建StudentDao类,实现IStudentDao接口
创建TeacherDao类,实现IStudentDao接口
单元测试与实体类略,如果你喜欢,也可以添加一个工厂类来进行操作。在本组代码中,我们要关注的是IBaseDao中定义的方法,如我们这次定义的add()方法,我们通过分析代码,可以发现里面的很多代码可以重用,只有在SQL语句与使用setString(int parameterIndex, String x)这个方法的时候有所变化。SQL中也是表名与表的字段有所不同,如果你开发的实体类中的属性与表中列的命名是一致的话,完全可以通过反射来进行取得属性,然后进行字符串的拼接;setString(int parameterIndex, String x)的设置,可以通过循环反射得到的数组进行字符串的拼接来得到get的方法,但是遇到注意的是,因为我们的Id一般不是手动设置的,为了能很好的设置对应的值,我们在开发实体类的时候,必须把Id这个属性放到开头。
2 使用反射对上面的代码进行修改
创建BaseDao类,来实现IBaseDao接口,同时记StudentDao与TeacherDao继承它(同时还要删除之前我们实现的add方法的实现,不然这样就没有什么意义了,当然如果你不想使用在BaseDao实现的add方法,可能履写add方法)。每个表IXXDao也不需要再继承IBaseDao这个接口。
现在你无论添加多少表,对应的DAo只需要继承BaseDao类,就可以实现这个表添加操作
- 使用反射实现万能DAO(基于JDBC)
- 使用反射技术实现对JDBC dao的简化
- 反射实现JDBC表单访问万能类
- 使用反射编写万能的DAO实现任意数据表的增删改查
- Spring中实现基于Jdbc的DAO
- DaoFactory(使用反射技术创建Dao的实现类)
- 如何使用JDBC实现数据访问对象层(DAO)
- 万能Dao(Oracle)
- java的JDBC连接的万能版总结(dao模式)
- java反射机制编写简单万能DAO类
- 注解+反射+JDBC,实现一个简易的泛型DAO接口
- 注解+反射+JDBC,实现一个简易的泛型DAO接口
- 注解+反射+JDBC,实现一个简易的泛型DAO接口
- JDBC使用DAO工厂模式
- JDBC - 使用原生编写DAO
- 利用泛型封装DAO层(万能DAO)
- Java基于自定义注释和反射机制实现初级通用DAO
- 反射实现JDBC封装
- java.lang.IllegalStateException: Fragment not attached to Activity异常的一个场景
- Angular介绍
- JDBC
- 求数组的最大值
- 日志分析查看——grep,sed,sort,awk运用
- 使用反射实现万能DAO(基于JDBC)
- C++中的异常处理(二)
- windows 下搭建web服务器
- CAS原理
- 区块链技术中从 0 到 1 建立自己的开发山寨币
- Mapped Statements collection does not contain value for XXX
- c++primer plus阅读笔记(四)
- 超详细cordova环境配置(windows)及实例
- 华为服务器操作系统EulerOS V2.0