【private HibernateTemplate template;】 的作用

这个是在spring中定义了一个bean,它是org.springframework.orm.hibernate3.HibernateTemplate的一个实例,
这个类是hibernate的模板类,里面有很多hibernate的常用操作方法,如常用CRUD增删改查,在我们的DAO中一般都会这么写一个。
package com.sxl.daoImpl;

import java.sql.SQLException;
import java.util.List;
import org.hibernate.Query; import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.HibernateTemplate; import com.sun.istack.internal.FinalArrayList;
import com.sxl.dao.ComputRoomDao;
import com.sxl.pojos.TComputroom; public class ComputRoomDaoImpl implements ComputRoomDao { private HibernateTemplate template; public HibernateTemplate getTemplate() {
return template;
} public void setTemplate(HibernateTemplate template) {
this.template = template;
} public List<TComputroom> findAll() {
// TODO Auto-generated method stub
List<TComputroom> ls=template.find("from TComputroom");
return ls;
} public List<TComputroom> findByCondition(TComputroom tc) {
// TODO Auto-generated method stub
return null;
} public boolean addComputRoom(TComputroom tc) {
// TODO Auto-generated method stub
template.save(tc);
return true;
} public boolean updateComputRoom(TComputroom tc) {
// TODO Auto-generated method stub
//…… return false;
} public boolean delComputRoom(TComputroom tc) {
// TODO Auto-generated method stub
TComputroom tc2=template.load(TComputroom.class, tc.getCrId());
template.delete(tc2);
return true;
} public List<TComputroom> getPage(final int page,final int rows) {
// TODO Auto-generated method stub
List<TComputroom> ls=template.execute(new HibernateCallback<List>() { public List doInHibernate(Session session)
throws HibernateException, SQLException {
// TODO Auto-generated method stub
Query query=session.createQuery("from TComputRoom order by cr_id");
query.setFirstResult((page-1)*rows);
query.setMaxResults(rows);
return query.list();
}
});
return ls;
} public int getAllrows() {
// TODO Auto-generated method stub
List<TComputroom> ls=template.find("from TComputRoom");
int allrows = ls.size();
System.out.println(allrows);
return allrows;
} public List<TComputroom> pageTComputroom(final int page,final int rows,
final String searchid,final String searchname) {
// TODO Auto-generated method stub
String HQL=null;
if (!searchid.equals("")&&!searchname.equals("")) {
HQL = "from TComputroom where cr_id ='"+searchid+"' cr_name like '"+searchname+"%' order by cr_id";
}
if (!searchname.equals("")&&searchid.equals("")) {
HQL="from TComputroom where cr_name like '%"+searchname+"%' order by cr_id";
}
if (!searchid.equals("")&&searchname.equals("")) {
HQL="from TComputroom where cr_id='"+searchid+"' order by cr_id";
}
if (searchid.equals("")&&searchname.equals("")) {
HQL="from TComputroom order by cr_id";
}
final String h=HQL;
List<TComputroom> ls=template.execute(new HibernateCallback<List>() { public List doInHibernate(Session session)
throws HibernateException, SQLException {
// TODO Auto-generated method stub
Query query=session.createQuery(h);
query.setFirstResult((page-1)*rows);
query.setMaxResults(rows);
return query.list();
} }); return ls;
} public int getAllrows(String searchid, String searchname) {
// TODO Auto-generated method stub
String HQL=null;
if (!searchid.equals("")&&!searchname.equals("")) {
HQL="from TComputroom where cr_id='"+searchid+"'and cr_name like'%"+searchname+"%' order by cr_id";
}
if (!searchname.equals("")&&searchid.equals("")) {
HQL="from TComputroom where cr_name ='"+searchname+"' order by cr_id";
}
if (searchname.equals("")&&!searchid.equals("")) {
HQL="from TComputroom where cr_id ='"+searchid+"' order by cr_id";
}
if (searchname.equals("")&&searchid.equals("")) {
HQL="from TComputroom order by cr_id";
}
List<TComputroom> ls=template.find(HQL);
int allrows =ls.size();
System.out.println(allrows);
return allrows;
} }
 

最新文章

  1. 【Android测试】【第十六节】Instrumentation——初识+实战
  2. java设计模式之外观模式(门面模式)
  3. ArcGIS 10.3 安装及破解
  4. 关于使用,NI采集卡+labview信号采集,问题交流【第二贴】
  5. Low-poly低面建模(低像素多边形)
  6. [转]Linux下修改/设置环境变量JAVA_HOME
  7. C语言函数参数既做出参又做入参的代表
  8. Ubuntu12.10硬盘安装
  9. ajax 特殊参数值无法传到后台问题
  10. mysql添加用户权限
  11. eclipse+axis2+webservice开发实例
  12. C++ Primer Plus 6th 读书笔记 - 第6章 分支语句和逻辑运算符
  13. Repeat Number
  14. js去除字符串中所有html标签及&amp;nbsp符号
  15. spring 多线程 写入数据库 和 写入 xml文件
  16. 搜索表字段包含某字符串的SQL和监控Oracle数据库的SQL。
  17. linux 安装mysql5.7版本
  18. Android应用程序国际化
  19. spring-IoC的配置文件applicationContext.XML
  20. linux vg lv pv

热门文章

  1. Oracle迁移到DB2常用转换
  2. 清理tomcat缓存
  3. HDU 6216 A Cubic number and A Cubic Number【数学思维+枚举/二分】
  4. Linux命令之last
  5. [BZOJ 2964] Boss单挑战
  6. Codechef A Game With a Sheet of Paper
  7. Mybatis添加&amp;&amp;删除&amp;&amp;更新
  8. React Native 让组件做到局部刷新
  9. Hadoop学习入门
  10. 【mybatis】 mybatis在mysql 更新update 操作 更新时间字段按照年月日时分秒格式 更新为当前时间