我想问一下,现在有个系统定义了大概50个表.持久用Hibernate.
现在50个实体都有相应的一个DAO实现,所有DAO实现都继承于一个用泛形定义的DAO接口,并实现了一个抽象的默认实现.
具体的DAO只要继承并传入管理的实体类型就可以了,在构造方法时.现在对于单个对象的CRUD,多条件查询都没有问题.
可是如果一个查询要涉及到2张表或者更多表时怎么办?而且如果把HQL语句的组装放在业务层,DAO层只负责执行HQL语句,以Map传递查询参数是否合适?
因为很多查询我只要一个大对象中的1到2个字段的值,为此拿出整个对象感觉有点浪费.
现在50个实体都有相应的一个DAO实现,所有DAO实现都继承于一个用泛形定义的DAO接口,并实现了一个抽象的默认实现.
具体的DAO只要继承并传入管理的实体类型就可以了,在构造方法时.现在对于单个对象的CRUD,多条件查询都没有问题.
可是如果一个查询要涉及到2张表或者更多表时怎么办?而且如果把HQL语句的组装放在业务层,DAO层只负责执行HQL语句,以Map传递查询参数是否合适?
因为很多查询我只要一个大对象中的1到2个字段的值,为此拿出整个对象感觉有点浪费.
解决方案 »
- IE 火狐兼容问题
- 为什么在oracle下报错
- struts2 自定义验证拦截器的疑惑和标签<s:property>
- websphere在myeclipse下启动问题
- hibernate+hsql 出错
- 求详解JDK1.4与JDK1.5区别!!!!
- java写的web应用程序和j2ee开发程序有什么不一样的?
- 关于使用JDOM提取XML文件是的一个问题
- FREEMARKER和EL表达式的区别?
- 讨论:J2EE的应用,文件应该如何存储?(来者有分,online)
- 我的程序为什么会报说sysdatabases无效呢!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- spring+hibernate+struts 为什么换到 Myeclipse6.1 中就中出现错误
比如DAO查询表A的记录可以通过A.aid来查询
那么直接SQL语句from a where aid=?
不就可以了吗?
至于查询多个表,当然也是可以的.不知道有没有理解错.