日期:2014-05-18  浏览次数:20664 次

我们来谈谈项目中如何让使用hibernate
在这里,我们来谈谈在项目中怎样用hibernate,这里所说的项目不仅包括小项目,还包括大项目,比如说几亿以上的项目,我前面在做一个市的智能交通系统(投资大概2亿元左右),当时选了hibernate作为数据持久层的开发。
但是开发到现在,整个系统的详细设计方案已经出来了,数据库表的关系也建好了。所以不能通过hibernate帮我们建立表。然后我就可以写特定模块的实体类,然后在使用hibernate的时候就范迷糊了!!!不知道怎么用hibernate,全是用session.createSQLQuery来生成Query,然后自己写SQL执行返回结果集或者影响函数。这样有个很重要的问题,很难维护,我们来谈谈大家在项目中是怎么样使用hibernate,还有大家会使用jpa注解来开发吗?
hibernate 数据库 交通 jpa query

------解决方案--------------------
hibernate也支持配置sql语句。
------解决方案--------------------
楼主好机会啊 !  我都没这么好的机会做这么大的项目  平时我们也是用Hibernate的 sql  和 HQL也用
------解决方案--------------------
我们之前基本上也是写hql语句。尽量先封装好,这样就可以避免写很多语句,写好一些公用的方法
------解决方案--------------------
hibernate,很好啊,有争议的是认为hibernate影响性能。
不过我没觉得,可能是因为数据不是很大吧,现在用的jpa,用起来很方便,
在查看哪些查询代码时不在看到哪些长串的字符串,和字符串拼接,更多的是
实体类,和属性,数据库的移植就不说了
在使用上,如果一些固定的查询,比如要查询一个什么东西从哪个时间到时间,这查询语句一般不修改了,只是传入不同时间,会使用具名查询,
也有很好的分页查询方法,
如果实在要用原生sql.,也提供了sql查询,并且可以查询的结果直接封装成类。



------解决方案--------------------
楼主使用ibatis吧或者使用刚出的mybatis就不用createSqlquery了。将所有查询的都写在配置文件中,好维护。只不过就是配置文件多点,在dao层代码写的要相对少很多,还有自己写的sql效率高点哦。
------解决方案--------------------
我也推荐使用ibatis,hibernate是全自动的,ibatis是半自动的,用起来更加灵活方便。
------解决方案--------------------
我想问下,为什么不选用jdbc,封装的好,一样不差于任何一种数据处理框架。
------解决方案--------------------
我建议你们还是不要用hibernate,中期你们会发现各种批量操作杯具,后期你们会发现各种性能问题(尤其是响应要求高的业务)杯具。
------解决方案--------------------
现在就是jpa注解配合hibernate,本人小菜非常喜欢hibernate
------解决方案--------------------
用mysql,单表数据600万,没有做优化,简单分页(每页15条)查询一次,耗时300秒
你可以试试用hibernate,同等情况下,查询时间是多少,比较后就知道差距了。