【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. Codeforces #442 Div2 F

    #442 Div2 F 题意 给出一些包含两种类型(a, b)问题的问题册,每本问题册有一些题目,每次查询某一区间,问有多少子区间中 a 问题的数量等于 b 问题的数量加 \(k\) . 分析 令包含 ...

  2. java.sql.SQLException: Access denied for user ''@'localhost' (using password: No)

    出错原因: 连接数据库是忘记配username 和 password 了 刚在学hiberbate4,把持久层从纯粹的jdbc改为hiberbate 出现的错误.(原来的是直接读取properties ...

  3. [COGS2479 && COGS2639]高维偏序(CDQ分治,bitset)

    COGS2479:四维偏序. CDQ套CDQ CDQ:对a分治,对b排序,再对a打标记,然后执行CDQ2 CDQ2:对b分治,对c归并排序,对d树状数组. #include<cstdio> ...

  4. python3-开发面试题(python)6.22基础篇(1)

    1.为什么学习Python? 1.语言排行榜 2.语言本身简洁,优美,功能超级强大的 3.跨平台 4.非常火爆的社区 5.用的公司的多 2.通过什么途径学习的Python? 某宝2.8就搞定了,跟着视 ...

  5. 关于Hadoop_env.sh中的HADOOP_CLASSPATH

    之前博客里介绍了如何自定义DoubleArrayWritable,并将该类型的value写入SequenceFile文件中,为了能够使用命令查看这个文件中的内容(果然坑都是一步一步给自己挖的)参考了网 ...

  6. Spring的Aop 注解配置

    1,导包 2,准备目标对象 package com.songyan.anno; public interface UserService { void save(); void delete(); v ...

  7. 杂谈PID控制算法——第二篇:调·三个量

    上面一篇文章讲了一下PID算法中的三个常量大致的在PID算法中起的一个作用,但在实际的使用中,究竟应该如何调节(或者用更加专业的话说是整定)PID控制算法的三个.首先可以将KP,KI,KD三个常量全部 ...

  8. Visual Studio 断点无法命中怎么办?

    经常远程调试服务器打断点是空心的,很抓狂,正确的方法应该是 #if DEBUG if (System.Diagnostics.Debugger.IsAttached) { System.Diagnos ...

  9. zk介绍

    1. 配置管理 Zookeeper提供了这样的一种服务:一种集中管理配置的方法,我们在这个集中的地方修改了配置,所有对这个配置感兴趣的都可以获得变更.这样就省去手动拷贝配置了,还保证了可靠和一致性. ...

  10. spring MVC中获取request和response:

    spring MVC中获取request和response: HttpServletRequest request = ((ServletRequestAttributes) RequestConte ...