`
TreasureNow
  • 浏览: 21262 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

getHibernateTemplate().getSessionFactory().getCurrentSession

 
阅读更多

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;
		}
	}

 

分享到:
评论

相关推荐

    struts2_spring_hibernate_分页显示.doc

    Query query = this.getHibernateTemplate().getSessionFactory().getCurrentSession().createQuery(hql); query.setFirstResult(start); // 设置起始位置 query.setMaxResults(pageInfo.getRows()); // 设置每页...

    STRUTS2+HIBERNATE详细的分页实现代码详细的分页实现代码

    Number rowCount = (Number) getHibernateTemplate().getSessionFactory().getCurrentSession().createQuery(hql).uniqueResult(); return rowCount.intValue(); } } // Struts2 Action public class ...

    hibernate API

    Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); SellerAppInfo sellerAppInfo1 = (SellerAppInfo)session.get(SellerAppInfo.class, (long)2); ``` 这里首先获取...

    struts2+spring+hibernate

    Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); return session.get(clazz, id); } } ``` #### 四、小结 通过上述步骤,我们可以利用Struts2 + Spring + Hibernate框架...

    HibernateDaoSupport与JdbcDaoSupport

    Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); Transaction transaction = session.beginTransaction(); try { // 执行具体的业务逻辑 transaction.commit(); } catch ...

    SSh sql/hql 分页

    Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); Query query = session.createQuery("from YourEntity e"); query.setFirstResult((page - 1) * pageSize); query....

    J-HI 手册 how to手册

    - **实现方式**: 使用`this.getHibernateTemplate().getSessionFactory().getCurrentSession()`来获取当前线程的Session实例。 **3. 如何调用存储过程** 尽管在Hibernate中直接调用存储过程不是最佳实践,但在某些...

Global site tag (gtag.js) - Google Analytics