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

【private HibernateTemplate template;】 的作用的更多相关文章

  1. vue中template的作用及使用

     先来看一个需求:下图div用v-for做了列表循环,现在想要span也一起循环,应该怎么做? 有3种方法可以实现 ①:直接用v-for对span也循环一次(该方法虽然可以使用,但不要用这种方式,因为 ...

  2. private,public,protected 的作用

    public  修饰的变量和函数可以在类的内部和外部都可以访问 protected   修饰的变量和函数只可以在类的内部访问,如果该类派生出子类,那么在子类中该变量和函数也可以使用 private   ...

  3. Spring4+SpringMVC+Hibernate4整合入门与实例

    配置web.xml <? xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=&q ...

  4. SSH三大框架合辑的搭建步骤

    v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...

  5. 【Spring】Spring+struts2+Hibernate框架的搭建

    1.搭建过程 首先需要引入Spring.Struts2.Hibernate的开发包,已经数据库的驱动包. UserAction.java文件 package cn.shop.action; impor ...

  6. 【Spring】Spring框架如何集成Hibernate框架

    下面个整理一下hibernate和Spring框架的结合. 首先是引入hibernate框架的包.Spring框架的包.数据库驱动包. User.java文件 package cn.shop.bean ...

  7. Maven环境下搭建SSH框架

    © 版权声明:本文为博主原创文章,转载请注明出处 1.搭建环境 Maven:3.3.9 Struts2:2.5.10 Spring:4.3.8.RELEASE Hibernate:5.1.7.Fina ...

  8. Maven环境下搭建SSH框架之Spring整合Hibernate

    © 版权声明:本文为博主原创文章,转载请注明出处 1.搭建环境 Spring:4.3.8.RELEASE Hibernate:5.1.7.Final MySQL:5.7.17 注意:其他版本在某些特性 ...

  9. Eclipse下面的Maven管理的SSH框架整合(Struts,Spring,Hibernate)

    搭建的环境:eclispe下面的maven web项目 Struts:    2.5.10 Spring:    4.3.8 Hibernate:   5.1.7 .Final MySQL:   5. ...

随机推荐

  1. [linux]多线程下载

    axel -n 10 -o /tmp/ http://soft.vpser.net/lnmp/lnmp0.7-full.tar.gz # 10是线程数

  2. 32、Django实战第32天:我的收藏

    我的收藏有3个页面:课程机构,授课教师,公开课程 课程机构 1.编辑usercenter-fav-org.html继承usercenter-base.html 2.编辑users.views.py . ...

  3. ( 转 ) UML 类图

    在UML类图中,常见的有以下几种关系:泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Compositi ...

  4. 记录(Record)

    记录有可以被称为行(Row),可以通俗的认为它是数据表中的一行数据.以员工表为例,一个公司的员工表中的数据是这样的: 这里每一行数据就代表一个员工的资料,这样的一行数据就叫做一条记录.表是由行和列组成 ...

  5. 【tarjan求割顶】BZOJ2730-[HNOI2012]矿场搭建

    [题目大意] 煤矿工地可以看成是由隧道连接挖煤点组成的无向图.为安全起见,希望在工地发生事故时所有挖煤点的工人都能有一条出路逃到救援出口处.于是矿主决定在某些挖煤点设立救援出口,使得无论哪一个挖煤点坍 ...

  6. 1.8(学习笔记)监听器(Listener)

    一.监听器简介 监听器是web容器对某一些对象的监听,当某些对象发生创建.修改.删除的动作时, web容器会自动调用对应的监听器中的方法. 例如A是监听器,B是被监听对象,A的监听任务是B回家时来开门 ...

  7. Problem W: 零起点学算法21——求平均值

    #include<stdio.h> int main() { int a,b,c; scanf("%d %d %d",&a,&b,&c); pr ...

  8. 网络编程-UDP

    代码部分--UDP传输 * 1.发送Send * 创建DatagramSocket, 随机端口号 * 创建DatagramPacket, 指定数据, 长度, 地址, 端口 * 使用DatagramSo ...

  9. SSH学习——声明式事物管理(Spring)

    1.什么是事物? 事务是一组操作的执行单元,相对于数据库操作来讲,事务管理的是一组SQL指令,比如增加,修改,删除等,事务的一致性,要求,这个事务内的操作必须全部执行成功,如果在此过程种出现了差错,比 ...

  10. Jetty错误: badMessage: java.lang.IllegalStateException: too much data after closed for HttpChannelOverHttp@472adad9{r=2,c=false,a=IDLE,uri=}

    最近用Jetty跑Spring MVC接收POST请求(POST中数据很大).出现数据无法获取到的问题.如: @RequestMapping(value = "/receive", ...