hibernate里使用JDBC查询示例代码
来源:互联网 发布:2015淘宝新店扶持多久 编辑:程序博客网 时间:2024/06/05 01:51
iLife's 博客http://blog.csdn.net/fei1502816
在使用hibernate的时候,有的时候需要用sql语句来执行,而HibernateDaoSupport方便了操作后,执行sql时候遇到不能执行的问题,
下列方法是一个内部类来执行sql,可以写一个通用方法来执行sql,通常如果没有必要尽量不使用sql,但是有的时候就必须使用了,就想下列的查询分组查询,不想在hibernate中使用一对多关系,而又必须使用group by 哪么只能使用下列方式
import org.hibernate.HibernateException; import org.hibernate.Session; import org.springframework.orm.hibernate3.HibernateCallback; import java.sql.SQLException; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; public List<KnowledgeQueryBean> getKnowledgeQueryInfo() { List<KnowledgeQueryBean> ListAll = new ArrayList<KnowledgeQueryBean>(); final String sql = "SELECT ky.KNOWLEDGEQUERYID,ky.TITILE,ky.CREATEDATE,eu.USERNAME ,ky.USERID,COUNT(kyr.KNOWLEDGEQUERYID) AS COUNT"+ " FROM KNOWLEDGEQUERY ky LEFT JOIN KNOWLEDGEQUERYANSWER kyr ON ky.KNOWLEDGEQUERYID = kyr.KNOWLEDGEQUERYID" + " LEFT JOIN EOM_USER eu ON ky.USERID = eu.USER_ID"+ " GROUP BY ky.KNOWLEDGEQUERYID,ky.TITILE,ky.CREATEDATE,eu.USERNAME,ky.USERID ORDER BY ky.CREATEDATE DESC"; ListAll = (List<KnowledgeQueryBean>)this.getHibernateTemplate().execute( new HibernateCallback(){ public Object doInHibernate(Session session) throws HibernateException, SQLException { Connection con = session.connection(); PreparedStatement ps = con.prepareStatement(sql); ResultSet rs = ps.executeQuery(); List<KnowledgeQueryBean> all = new ArrayList<KnowledgeQueryBean>(); while(rs.next()){ KnowledgeQueryBean kqb = new KnowledgeQueryBean(); kqb.setKnowledgeQueryId( rs.getLong("KNOWLEDGEQUERYID")); kqb.setTitle(rs.getString("TITILE")); kqb.setCreateDate(rs.getDate("CREATEDATE")); kqb.setContent(rs.getString("USERNAME")); kqb.setUserId(rs.getLong("USERID")); kqb.setCount(rs.getInt("COUNT")); all.add(kqb); } rs.close(); ps.close(); session.flush(); session.close(); return all; } } ); return ListAll; }
iLiFe's 博客http://blog.csdn.net/fei1502816
- hibernate里使用JDBC查询示例代码
- Spring+hibernate里使用jdbc connection
- spring jdbc使用总结及示例代码
- 使用JDBC查询数据库的代码
- JDBC代码示例
- hibernate查询和jdbc查询
- Hibernate查询示例
- hibernate里使用hql语句处理多表查询
- Spring里使用JDBC
- JDBC使用示例
- Spring+jdbc使用示例
- 联合查询代码示例
- 注册表查询示例代码
- MSB的JDBC示例代码
- hibernate查询指定字段示例
- hibernate使用jdbc
- 使用JDBC查询数据
- hibernate里使用jdbc方式调用oracle带游标返回参数的简单分页存储过程
- 查找到文件后复制到另一目录 目录结构保持不变
- 详细讲解在Spring中进行集成测试
- spring如何使用多个xml配置文件
- Javascript实现动态菜单添加
- POJ1318解题报告
- hibernate里使用JDBC查询示例代码
- tizen alpha 源码下载,sdk下载,sdk初体验
- JavaScript 正则表达式校验日期格式
- 雷锋读图:2011风险投资创10年历史新高,总金额达306亿美金
- linux apt-get yum 软件包
- extern“c”声明的作用
- pthread_create函数使用
- 嵌入式Web服务器:GoAhead和AppWeb
- java学习之路