关于SSH开发实际应用

a_king 2013-02-17 11:15:18
以前开发的时候都是用STRUTS+HIBERNATE,获得数据库的SESSION都是通过HIBERNATESESSIONFACTORY,而且在SESSION里写SQL语句,HQL语句都很方便。
现在在学SPRING,SPRING管理HIBERNATE的时候都是继承了HibernateDaoSupport,通过getHibernateTemplate来完成数据库的操作,但是在getHibernateTemplate里却不能写SQL语句,但是实际开发中很多时候都是写SQL,而不是简单的HQL。
请问有SSH实际开发经验的,是不是很多时候还要用SPRING+JDBC呀?
...全文
139 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lvzg_005 2013-02-17
  • 打赏
  • 举报
回复
如果是复杂的sql,可以考虑使用mybatis,而且spring和mybatis整合的不错
jijihahalala 2013-02-17
  • 打赏
  • 举报
回复
SPRING管理HIBERNATE 也能得到session呀
蜀南真人 2013-02-17
  • 打赏
  • 举报
回复
hibernate + spring +jdbc,使用HQL
woshiliubei3 2013-02-17
  • 打赏
  • 举报
回复
通过getHibernateTemplate获取到的HibernateTemplate也支持HQL操作数据库

public Collection getVets() throws DataAccessException {
return getHibernateTemplate().
find(hql);
}
或者利用回调函数自己定义如何进行数据库操作
  List list = getHibernateTemplate().executeFind ( new HibernateCallback ( ) {
                            public Object doInHibernate ( Session session ) throws HibernateException, SQLException {
                                            //在这里自定义数据库操作
                                            Query query = session.createQuery ( hql ) ;
                                            query.setFirstResult ( offset ) ;
                                            query.setMaxResults ( length ) ;
                                            List list = query.list ( ) ;
                                            return list ;
                           }
               }) ;
吉他猪 2013-02-17
  • 打赏
  • 举报
回复
我也很久没用过hibernate了,只记得有这样的回调函数来实现比较复杂一些的HQL语句,给你个链接你去看看就知道了http://tudusi.iteye.com/blog/1514856
a_king 2013-02-17
  • 打赏
  • 举报
回复
引用 1 楼 jijihahalala 的回复:
SPRING管理HIBERNATE 也能得到session呀
如果还是通过HIBERNATESESSIONFACTORY获得SESSION的话,那么就失去通过SRPING管理HIBERNATE事务的意义了。

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧