java高手进,帮忙解答下DAO工厂设计模式方面的问题

所有用到的页面都要改。如果使用DAO工厂类,表象成可以这样引用PersonDAO personDAO=DaoFactory.get getPersonDAOInstance();遇到以上问题,修改的时候只要将工厂累修改一下就可以了 public class DaoFactory{ public static PersonDAO getPersonDAOInstance(){ return new PersonDAOImpl() ;} 将上面的改...
java高手进,帮忙解答下DAO工厂设计模式方面的问题
我觉得有两种方法可以解决,一个是改用Spring框架全面托管类的实例化,第二种方法可以使用接口的方式但是只是减小了一半的代码改动量。要不就用代理和反射机制2012-09-30
真长2012-09-25
1、在表现层引用PersonDAO personDAO=new PersonDAOImpl()类是干什么的?
答:PersonDAO personDAO=new PersonDAOImpl()引用这句话让表现成取得DAO对象,表现成可以通过“personDAO.方法”来对数据库person表进行操作。

2、又写了个PersonDAOJDBCImpl.java类,在表现层全部改成这个类是说的什么意思?
答:上面写的很清楚,DAO的Hibernate实现开始全部转换成JDBC实现。但是项目经理建议不要破坏现有的Hibernate实现,以后可以通过技术研究来提升Hibernate的访问效率。所以要在不破坏DAO的Hibernate实现(PersonDAOImpl.java)的情况下实现DAO的JDBC实现,所以只能在写一个PersonDAOJDBCImpl.java(PersonDAOImpl.java类和PersonDAOJDBCImpl.java类同时存在都实现PersonDAO 接口),要使用JDBC实现,表现层就要将PersonDAO personDAO=new PersonDAOImpl()改为PersonDAO personDAO=new PersonDAOJDBCImpl(),所有用到的页面都要改。

如果使用DAO工厂类,表象成可以这样引用PersonDAO personDAO=DaoFactory.get getPersonDAOInstance();
遇到以上问题,修改的时候只要将工厂累修改一下就可以了
public class DaoFactory{
public static PersonDAO getPersonDAOInstance()
{
return new PersonDAOImpl() ;
}
将上面的改为下面的
public class DaoFactory{
public static PersonDAO getPersonDAOInstance()
{
return new PersonDAOJDBCImpl();
}

其实说的意识是一开始就要用工厂,之后修改起来就方便了。2012-09-25
mengvlog 阅读 52 次 更新于 2025-10-30 10:51:47 我来答关注问题0
  • 1、在表现层引用PersonDAO personDAO=new PersonDAOImpl()类是干什么的?答:PersonDAO personDAO=new PersonDAOImpl()引用这句话让表现成取得DAO对象,表现成可以通过“personDAO.方法”来对数据库person表进行操作。2、又写了个PersonDAOJDBCImpl.java类,在表现层全部改成这个类是说的什么意思?答:...

  • 1.有人说去掉泛型,这是一个很烂的习惯,完全可以用List list = new ArrayList();来达到无泛型的效果2.去掉泛型或者用List还是有问题,因为你取数据的时候取到的都是Object,需要转换为Integer或者String. 问题是:你知道哪个元素要转成Integer,哪个元素又要转成String??3....

  • anonymous 关于面试JAVA工程师中遇到的一些棘手的问题,求大家帮忙来解答下,求助各位软件开发高手

    一:项目经理分两种,一种是技术的,一种是业务的。基本都是负责项目的架构设计实现安排与进度等。项目经理基本不写代码,是给你分配任务的人,你具体负责的类型很多,需求分析,架构设计,编码实现,项目测试等。具体的你做过什么就说什么。二:没做过正式的商业项目你就说你做过实践项目,不要吹牛,...

  •  oiomage JAVA习题,请高手帮忙解答一下,急急急

    01.X 父类中私有的方法和字段不会被继承 02.O java类只能单继承和多实现 03.O Exception为所有异常的父类,所以,他包含所有的异常 04.X Class1类的方法可以访问 05.X 抽象类有构造方法,因为抽象类中有非抽象方法,可以被继承。06.X 如果父类中的构造方法没有要求参数,则可以省略super();07...

  • A)不能编译通过 request.setAttribute("count",new Integer(0)); //设置请求变量count-0;Integer count = request.getAttribute("count"); //从请求中取出变量的count值。但是不能直接从object转成 integer应该是:Integer count = (Integer) request.getAttribute("count");A...

檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部