开发者学堂课程【DAO 开发实战业务分析:数据层设计与开发(数据层工厂类)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/399/detail/5165
数据层设计与开发(数据层工厂类)
内容介绍:
一、实现工厂类
二、总结
一、实现工厂类
如果需要取得接口的实例化对象,那么必然需要通过工厂类完成,但是由于整个项目里面有可能有许多的数据表(DAO 接口就会多),所以这个时候的工厂类如果要想操作灵活建议使用反射机制来进行控制。
工厂类要求保存在 cn.mldn.oracle.factory 包中;
范例:定义工广类
package cn.mldn.oracle.factory;
/**
*取得DAO接口的工厂类
*author mldn
*/
public class DAOFactory {
private DAOFactory() {;
//为了不产生实例化对象
/**
*定义DAO接口的对象取得
*@param cls 子类的Class对象
*return一个接口的实例化对象
*/
public static T getInstance(Class cls) {
try {
return cls.newInstance() ;
} catch (Exception e) {
e.printStackTrace( ):
}
return null ;
}
本处增加私有化构造方法的目的在于:不希望程序产生 DAOFactory 类的实例化对象,只希望它通过内部提供的 static 方法进行操作。
public static T getInstance(Class cls,Connection conn
try {
Constructor<1> cons_=c(s.gn) :return cons.newInstance( conn) ;
}catch (Exception e) {
e.printStackTrace();
}
return null ;
}
二、总结
1、本次实现的数据层的操作子类是最基础也是最容易的子类,整个的操作之中没有做出任何的设计,只是简单的依靠纯粹的引用传递完成,但是实质上发现,代码的控制有点麻烦。
2、如果一个项目之中所有的数据层的操作都是同样的方式取得,代码有点麻烦,会重复很多