1. getHibernateTemplate().getSessionFactory().createSQLQuery(insersql).executeUpdate() 直接写 sql 语句进行数据存储。
2. getHibernateTemplate().find(hql); 进行查询
public List findAll() throws Exception { log.debug("finding all User instances"); try { String queryString = "from User"; Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); Query query = session.createSQLQuery("select distinct(workid) workid from work"); List<BigInteger> list = query.list(); String deletesql = "delete from overwork"; System.out.println(deletesql); session.createSQLQuery(deletesql).executeUpdate(); for (BigInteger workid : list){ List<Object> list_time = new ArrayList<Object>(); StringBuffer buffer = new StringBuffer(); list_time.add(workid); buffer.append(workid + ","); for (int i = 1; i < 29; i++){ String day = "2013/02/" + i; String startime = " 16:45:00"; String quer = "from Work where workid = " + workid + " and (worktime between '"+ day + startime + "' and '"+ day +" 23:59:00')"; List<Work> list_1 = getHibernateTemplate().find(quer); //(List<Work>)session.createSQLQuery().list(); if (list_1.size() > 0){ Timestamp total_over = list_1.get(0).getWorktime(); for (Work work : list_1){ if (work.getWorktime().compareTo(total_over) > -1){ total_over = work.getWorktime(); } } SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// String end = df.format(total_over); String day1 = String.valueOf(i); if (day1.length() < 2){ day1 = "0" + day1; } String begin = "2013-02-" + i + startime; System.out.println("--------begin: "+ begin + " end:" + end); String time = getTimeSpace(begin, end); list_time.add(time); buffer.append(" '" + time + "',"); } else { list_time.add("''"); buffer.append(" '',"); } } buffer.append("'',"); buffer.append("'',"); buffer.append("'',"); String bufferstr = buffer.toString(); bufferstr = bufferstr.substring(0, bufferstr.length() - 1); String insersql = "insert into overwork values (" + bufferstr + ")"; System.out.println(insersql); session.createSQLQuery(insersql).executeUpdate(); } System.out.println(list.size()); return getHibernateTemplate().find(queryString); } catch (RuntimeException re) { re.printStackTrace(); log.error("find all failed", re); throw re; } }
相关推荐
gethibernatetemplate的find方法,find(String queryString);find(String queryString , Object value);find(String queryString, Object[] values);findByExample(Object exampleEntity);findByExample(Object ...
Query query = getHibernateTemplate().getSessionFactory().openSession().createQuery(hql); query.setFirstResult(startIndex); query.setMaxResults(pageSize); List<Info> infos = query.list(); ``` ...
Query query = this.getHibernateTemplate().getSessionFactory().getCurrentSession().createQuery(hql); query.setFirstResult(start); // 设置起始位置 query.setMaxResults(pageInfo.getRows()); // 设置每页...
Number rowCount = (Number) getHibernateTemplate().getSessionFactory().getCurrentSession().createQuery(hql).uniqueResult(); return rowCount.intValue(); } } // Struts2 Action public class ...
### getHibernateTemplate() 使用方法详解 #### 概述 在Java开发中,Hibernate是一个非常流行的持久层框架,它简化了数据库操作,使开发者能够更加高效地进行数据存取。Spring框架进一步封装了Hibernate,提供了`...
Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); SellerAppInfo sellerAppInfo1 = (SellerAppInfo)session.get(SellerAppInfo.class, (long)2); ``` 这里首先获取...
### getHibernateTemplate()查询详解 #### 一、`find(String queryString)` 此方法用于执行一个HQL查询,其中`queryString`参数表示一个HQL查询字符串。例如: ```java this.getHibernateTemplate().find("from ...
List<User> users = this.getHibernateTemplate().find("from bean.User"); ``` 这条代码会执行一个简单的HQL查询,即“从User表中选择所有记录”,并返回一个包含所有用户对象的列表。 #### 二、find(String ...
`getHibernateTemplate()`方法是Spring框架中用于整合Hibernate ORM的一个关键接口,它是`HibernateDaoSupport`类的一个重要方法。在Spring MVC(S2SH,即Struts2、Spring和Hibernate的组合)架构中,`...
Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); return session.get(clazz, id); } } ``` #### 四、小结 通过上述步骤,我们可以利用Struts2 + Spring + Hibernate框架...
"JSP 中调用 DAO 的 getHibernateTemplate() 时报空指针异常的解决方法" 在整合 SSH 框架时,经常会遇到 JSP 中调用 DAO 的 getHibernateTemplate() 时报空指针异常的错误。本文将讲解这个问题的原因和解决方法。 ...
Session session = getHibernateTemplate().getSessionFactory().openSession(); // 设置查询条件 Criteria criteria = session.createCriteria(Address.class); criteria.add(Restrictions.eq("username", ...
这种方式是通过`getHibernateTemplate().getSessionFactory().openSession()`来获得一个新的Session,然后通过该Session获取连接。 ```java // 方式一 Session session = this.getHibernateTemplate()....
### getHibernateTemplate分页-模糊查询 #### 一、概述 在Java开发中,使用Hibernate进行数据持久化处理是非常常见的做法。特别是在企业级应用中,为了实现高效的数据库操作与管理,开发者经常需要对数据进行分页...
- 通过`this.getHibernateTemplate().getSessionFactory().openSession();` - 通过`this.getSession();` 这两种方式获取Session后,同样需要使用`releaseSession(session)`释放资源。务必记住,多次查询而未释放...
List<Cat> whiteCats = getHibernateTemplate().findByCriteria(detachedCriteria); ``` #### 四、小结 Hibernate的Criteria API通过其丰富的特性和灵活性,为开发者提供了构建复杂查询的强大工具。通过理解并...
return (Card)this.getHibernateTemplate().get(Card.class, cardPass); } @Override public void updateCard(Card card) { // TODO Auto-generated method stub this.getHibernateTemplate().update(card...
Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); Transaction transaction = session.beginTransaction(); try { // 执行具体的业务逻辑 transaction.commit(); } catch ...
Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); Query query = session.createQuery("from YourEntity e"); query.setFirstResult((page - 1) * pageSize); query....
- **实现方式**: 使用`this.getHibernateTemplate().getSessionFactory().getCurrentSession()`来获取当前线程的Session实例。 **3. 如何调用存储过程** 尽管在Hibernate中直接调用存储过程不是最佳实践,但在某些...