- 浏览: 446093 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
wjs876046992:
后来我下载了Eclipse Indigo版本,同样操作却成功了 ...
myeclipse2014中安装spket-1.6.23 -
wjs876046992:
我的是myEclipse2014,将那两个文件夹拷贝到drop ...
myeclipse2014中安装spket-1.6.23 -
lucky8060:
应该不是每次请求都产生一个action吧?应该是每个sessi ...
Struts2 action的单例与多例
import java.io.Serializable; import java.util.List; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.omg.Dynamic.Parameter; public class HibernateHelper { static SessionFactory sf=null; static{ Configuration cf=new Configuration().configure(); sf=cf.buildSessionFactory(); } //1、得到session。 public static Session getcurrentsession(){ Session session=sf.getCurrentSession(); return session; } public static Session opensession(){ Session session=sf.openSession(); return session; } //2、load提供一个返回一个对象的方法 public static Object findbyid(Class clazz, Serializable id){ Session s=HibernateHelper.getcurrentsession(); Transaction ts=s.beginTransaction(); Object obj=null; try { obj=s.load(clazz, id); //提交事务 ts.commit(); } catch (HibernateException e) { // TODO Auto-generated catch block if (ts!=null) { ts.rollback(); } e.printStackTrace(); }finally{ if (s!=null&&s.isOpen()) { s.close(); } return obj; } } //3、统一的一个修改和删除(批量 hql) hql"delete upate ...??" public static void executeUpdate(String hql,String [] parameters){ Session s=null; Transaction tx=null; try { s=opensession(); tx=s.beginTransaction(); Query query=s.createQuery(hql); //先判断是否有参数要绑定 if(parameters!=null&& parameters.length>0){ for(int i=0;i<parameters.length;i++){ query.setString(i, parameters[i]); } } query.executeUpdate(); tx.commit(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e.getMessage()); // TODO: handle exception }finally{ if(s!=null&&s.isOpen()){ s.close(); } } } //4、统一的添加的方法 public static void save(Object obj){ Session s=null; Transaction tx=null; try { s=opensession(); tx=s.beginTransaction(); s.save(obj); tx.commit(); } catch (Exception e) { if(tx!=null){ tx.rollback(); } throw new RuntimeException(e.getMessage()); // TODO: handle exception }finally{ if(s!=null && s.isOpen()){ s.close(); } } } //5、只返回一个数据 public static String executeQuery_onepara(String hql,String parameter[]){ String s=null; //创建session Session session=HibernateHelper.getcurrentsession(); //创建事务 Transaction ts=session.beginTransaction(); try { Query q=session.createQuery(hql); if (parameter!=null&¶meter.length>0) { for (int i = 0; i < parameter.length; i++) { q.setString(i, parameter[i]); } } s=(String)q.uniqueResult(); //提交事务 ts.commit(); } catch (HibernateException e) { // TODO Auto-generated catch block if (ts!=null) { ts.rollback(); } e.printStackTrace(); }finally{ if (session!=null&&session.isOpen()) { session.close(); } } return s; } //6、只返回一个对象 public static Object executeQueryForObject(String hql,String parameter[]){ Object o=null; //创建session Session session=HibernateHelper.getcurrentsession(); //创建事务 Transaction ts=session.beginTransaction(); try { Query q=session.createQuery(hql); if (parameter!=null&¶meter.length>0) { for (int i = 0; i < parameter.length; i++) { q.setString(i, parameter[i]); } } o=q.uniqueResult(); //提交事务 ts.commit(); } catch (HibernateException e) { // TODO Auto-generated catch block if (ts!=null) { ts.rollback(); } e.printStackTrace(); }finally{ if (session!=null&&session.isOpen()) { session.close(); } } return o; } //7、分页 //提供提议分页 //通过参数绑定进行查询, public static List executeQuery_bypage(String hql,String parameter[],int pagesize,int pagenow){ List list=null; //创建session Session session=HibernateHelper.getcurrentsession(); //创建事务 Transaction ts=session.beginTransaction(); try { Query q=session.createQuery(hql); if (parameter!=null&¶meter.length>0) { for (int i = 0; i < parameter.length; i++) { q.setString(i, parameter[i]); } } q.setFirstResult((pagenow-1)*pagesize).setMaxResults(pagesize); list=q.list(); //提交事务 ts.commit(); } catch (HibernateException e) { // TODO Auto-generated catch block if (ts!=null) { ts.rollback(); } e.printStackTrace(); }finally{ if (session!=null&&session.isOpen()) { session.close(); } } return list; } //通过参数绑定进行查询, public static List executeQuery_common_currentSe_setParameter(String hql,String parameter[]){ List list=null; //创建session Session session=HibernateHelper.getcurrentsession(); //创建事务 Transaction ts=session.beginTransaction(); try { Query q=session.createQuery(hql); if (parameter!=null&¶meter.length>0) { for (int i = 0; i < parameter.length; i++) { q.setString(i, parameter[i]); } } list=q.list(); //提交事务 ts.commit(); } catch (HibernateException e) { // TODO Auto-generated catch block if (ts!=null) { ts.rollback(); } e.printStackTrace(); }finally{ if (session!=null&&session.isOpen()) { session.close(); } } return list; } }
发表评论
-
java实现页面字符串换行空格方法(如果原始字符串存在换行和空格)
2014-09-28 14:23 2098适用于xml、json以及分条字符串 /** ... -
web里的路径获取方法总结
2014-09-25 17:27 5701、获取web系统根目录 String dirPath ... -
servlet或springmvc中得到web项目根路径
2014-07-07 14:53 19821、 request.getServletContext( ... -
springmvc controller和servlet中文乱码问题
2014-05-26 23:00 3608一、第一种方法通过tomcat配置和spring编码过滤器 ... -
flex拓扑图
2014-04-04 13:29 40123 -
使input type=“file”的浏览按钮透明隐藏的方法
2013-09-17 10:51 27516jsp代码: <input type="f ... -
hibernate3.6二级缓存
2013-06-14 09:31 1086使用spring的情况下: 注:首先确定hibernat ... -
一个过滤器实例
2013-06-04 17:33 967public class AuthFilter imple ... -
Struts标签使用java帮助类方法
2013-06-04 14:53 444<s:property value="@co ... -
分页操作
2013-05-29 09:58 8271.使用hibernate (1)定义变量-页面传递当前 ... -
使用hibernate查询部分字段的方法
2013-04-08 10:35 876数据库操作: List<UserAudit> ... -
log4j使用笔记
2013-04-03 15:10 7561.导入log4j的jar包--log4j-1.2.13. ... -
Struts2 action的单例与多例
2013-03-05 18:03 14834struts 2的Action是多实例 ... -
得到本地和远程IP
2013-03-03 18:16 2097package com.ru.util; impor ... -
在类中获取得到路径,request,response,session
2013-03-02 19:01 5510package com.ru.action; imp ... -
struts2的request,session,application
2012-12-04 16:30 9711.第一种方法(实现RequestAware,Sessi ... -
struts2实现文件上传
2012-10-07 16:06 8911.upload.jsp <%@ page ... -
struts2实现文件过滤
2012-10-07 17:09 972一、手动实现文件过滤 1.uploadAction.java ... -
struts2实现文件下载
2012-10-07 19:02 954注:struts2提供的下载功能,在action中只需要提 ... -
struts2拦截器机制
2012-10-08 16:17 1292一、inperceptor配置使用过程 1.配置拦截器 ...
相关推荐
希望能对大家学习 Hibernate 提供帮助. 这是第三篇. 内容如下:HQL 查询;Query 接口及其主要方法;Select 子句;更新与删除;引用查询;联合查询;子查询;数据加载方式;Sql 查询;分页查询;管理 Session;ThreadLocal 接口...
hibernate查询-hql等教程,对于学习hibernate有很好的帮助。
不喜欢使用myEclipse的朋友可以尝试下 最近在项目中使用Hibernate,由于需要...附件中为本人配置的eclipse HQL Plugins截图 希望对大家有所帮助。 工具很好用,可以识别出HQL文的语法正确,并且解析为标准SQL语句。
Hibernate中的查询:HQL、Criteria、原生SQl的Demo,希望可以帮助大家理解Hibernate查询。
14. HQL: Hibernate查询语言 14.1. 大小写敏感性问题 14.2. from子句 14.3. 关联(Association)与连接(Join) 14.4. join 语法的形式 14.5. select子句 14.6. 聚集函数 14.7. 多态查询 14.8. where子句 14.9. 表达式 ...
2.4. Hibernate独有的注解扩展 2.4.1. 实体 2.4.2. 标识符 2.4.3. 属性 2.4.3.1. 访问类型 2.4.3.2. 公式 2.4.3.3. 类型 2.4.3.4. 索引 2.4.3.5. @Parent 2.4.3.6. 生成的属性 2.4.4. 继承 2.4.5. 关于...
hibernate 教程 源代码, 包括关系映射,hql和帮助文档
Hibernate技术详解 ,为初学者了解hql提供帮助
主要介绍了JSP 开发之hibernate的hql查询多对多查询的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
本文试图解释如何使用Spring来集成组件(包括组件...如果我们没有使用J2EE服务器,Spring可以帮助我们。Spring在集成组件服务和它们相关的事务关系的时候,是基于控制倒置(InversionofControl)的。 集成(Assembling
由浅入深的介绍hibernate3,很适合初学者。。。
关于Hibernate3中文查询出错问题的解决,相信有不少朋友也遇过这种问题,希望对大家有所帮助
14. HQL: Hibernate查询语言 14.1. 大小写敏感性问题 14.2. from子句 14.3. 关联(Association)与连接(Join) 14.4. join 语法的形式 14.5. select子句 14.6. 聚集函数 14.7. 多态查询 14.8. where子句 14.9....
15. HQL: Hibernate查询语言 15.1. 大小写敏感性问题 15.2. from子句 15.3. 关联(Association)与连接(Join) 15.4. select子句 15.5. 聚集函数 15.6. 多态查询 15.7. where子句 15.8. 表达式 15.9. order by...
里面五张表,分别是小吃表,小吃类表,用户表,用户评价表,以及小吃用户关系表。 其中小吃表和小吃类表关系多对...其实也是我最近学习hibernate后的一个学习记录吧。 希望里面的一对多,多对多的细节可以帮助到新手。
hibernate映射查询的一些练习,应该有些帮助..
Hibernate提供了一套丰富的API和查询语言(HQL),使得开发者可以方便地进行数据库操作,而无需关心底层的SQL细节。通过整合Struts和Hibernate框架,这个资料包为开发者提供了一个强大的工具集,使得他们能够快速地...
根据自己学习总结的一些hibernate资料,包括全面介绍关系配置和各种查询,都有详细的说明。还有自己写的一些小dome。希望对初学者有帮助!
15. HQL: Hibernate查询语言 15.1. 大小写敏感性问题 15.2. from子句 15.3. 关联(Association)与连接(Join) 15.4. select子句 15.5. 聚集函数 15.6. 多态查询 15.7. where子句 15.8. 表达式 15.9. order by...
14. HQL: Hibernate查询语言 14.1. 大小写敏感性问题 14.2. from子句 14.3. 关联(Association)与连接(Join) 14.4. join 语法的形式 14.5. select子句 14.6. 聚集函数 14.7. 多态查询 14.8. where子句 14.9. 表达式 ...