随笔-42  评论-578  文章-1  trackbacks-0
Hibernate
Hibernate多对多关联映射的HQL中的in条件查询问题      摘要: Hibernate的HQL语句中的“in条件”句如:x in(‘a’,’b’,’c’),要求的是x是(‘a’,’b’,’c’)中的一个元素,而select role.users这样查出来的是集合的集合,它内部的元素应该是一个集合:set in (select role.users…),而不是一个对象: user in (select role.users…)。

可惜的是HQL语句没有set in (select role.users….)这样的子句,后来,查了一下Hibernate的参考文档,得到解决方法。原来,Hibernate的HQL语句中的“in条件”中,可加入”elements”关键词,即上面的查询语句变成:

  阅读全文
posted @ 2009-06-21 20:11 心梦帆影 阅读(12058) | 评论 (4)  编辑
Hibernate(JPA)多对多(ManyToMany)关联映射不完美之处      摘要: Hibernate和JPA控制关联关系的,只能是一方,不能双方控制的,
个人认为,Hibernate(JPA)在设置多对多关联映射时,应该有做法能使得双方都能控制关联关系才好,才符合实际吧!但事实上,好像还没有发现有Hibernate(JPA)这种能力!
  阅读全文
posted @ 2009-06-08 13:33 心梦帆影 阅读(26893) | 评论 (15)  编辑
奋斗两天,终于开发了自己的DAO层公共类(Spring+Hibernate实现)      摘要: 此EntityDao接口与EntityDaoImpl实现类,可取代了我们平时写的UserDao,NewsDao,CompanyDao等等,可直接供Service层调用.
public Pager findForPager(final Class entityClass,final String propertyName,final boolean isAsc,final int firstResult,final int maxResults,final Criterion ...criterions){
int totalCounts = findCountsByCriteria(entityClass, criterions);
List entityList = findByCriteria(entityClass, propertyName, isAsc, firstResult, maxResults, criterions);
Pager pager = new Pager();
  阅读全文
posted @ 2009-05-19 09:56 心梦帆影 阅读(10421) | 评论 (20)  编辑
基于Annotation的Struts2.0+Hibernate3.3+Spring2.5整合开发 (3)      摘要: 进入我们基于Annotation的Struts2.0+Hibernate3.3+Spring2.5整合开发的最后一个阶段了,这阶段主要为我们的项目引进Struts2的Annotation。相对于带Annotation的Hibernate与带Annotation的Spring整合来说,带Annotation的Struts与带Annotation的Spring整合还是比较容易实现的。
………………
成功啦!我们基于Annotation的SSH整合开发终于完成了。我所介绍的Annotation注解其实并不多,还得靠大家找资料去学习。而我们侧重点是在用Annotation时三大框架是如何整合起来的。
说点题外话吧,我们在开发过程中,究竟用Annotation还是XML……
  阅读全文
posted @ 2009-03-27 00:09 心梦帆影 阅读(9386) | 评论 (37)  编辑
基于Annotation的Struts2.0+Hibernate3.3+Spring2.5整合开发 (2)      摘要: 基于Annotation的SSH整合开发,其实,并没有我当初想像中那么顺利。真正去做的时候,才发觉有许多问题。但不要紧,探索一下吧。在探索过程中学到知识,才是最重要的。
…… ……
其实,到现在为止,我们发觉我们的XML配置文件还是很多。其实,这样想想,上一阶段我们省去了xxx.hbm.xml这类的文件,这一阶段,我们少去了这样的配置项。而这些,正是我们项目开发中,大量使用的配置。而只要书写简单的Annotation注解,就可以省去这样,我们何乐而不用。而那些我们保留的XML配置文件(如:数据库连接,事务),这样是写死的,一个项目就写一次或复制过来用,我们保留它又何妨?  阅读全文
posted @ 2009-03-25 01:05 心梦帆影 阅读(13097) | 评论 (24)  编辑
基于Annotation的Struts2.0+Hibernate3.3+Spring2.5整合开发 (1)      摘要: 写这个主题的文章在网络上应该暂时没有吧,也看过许多SSH整合开发的书,许多都是旧版本的框架整合,而且大部分都是以XML配置文件的方式,即使谈到Annotation也是针对其中一个框架而言的。随着开源框架更新版本中不断引进对Annotation的支持,使得我们可以用单方面去管理我们的类与关系,而不用像以往那样,一旦遇到问题,就要不断在Java视图和XML视图中切换。好,开始吧,既然网络中暂时没有这方面的文章,我就来开创个先例。自己探索学习一下,也让大家来学习和提出批评和建议。  阅读全文
posted @ 2009-03-23 21:05 心梦帆影 阅读(15639) | 评论 (38)  编辑
Hibernate+Spring+Struts2整合开发中的一个分页显示方案      摘要: 分页显示一直是web开发中一大烦琐的难题,传统的网页设计只在一个JSP或者ASP页面中书写所有关于数据库操作的代码,那样做分页可能简单一点,但当把网站分层开发后,分页就比较困难了,下面是我做Spring+Hibernate+Struts2项目时设计的分页代码,与大家分享交流。  阅读全文
posted @ 2008-11-29 20:54 心梦帆影 阅读(26978) | 评论 (114)  编辑
Struts 2.0 整合 Hibernate 3.2 开发注册登录系统      摘要: 开发工具:MyEclipse 6.0 ,Tomcat 5.5 ,JDK 1.5 ,MySQL 5.0 ;开发准备:下载Struts 2.0和Hibernate 3.2,大家可Struts和Hibernate的官方网站下载这两个框架。我们先来总览一下开发完成后的包—类图:
  阅读全文
posted @ 2008-11-11 01:44 心梦帆影 阅读(8582) | 评论 (58)  编辑