HibernateTemplate的简单使用
配置
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate4.HibernateTemplate"> <property name="sessionFactory" ref="mySessionFactory"/> </bean>
使用
package com.web.test; import java.util.Date; import java.util.List; import javax.transaction.Transactional; import org.hibernate.criterion.DetachedCriteria; import org.hibernate.criterion.Restrictions; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.orm.hibernate4.HibernateTemplate; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import com.web.common.bean.entity.User; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(value="classpath:/spring/spring-core.xml") @Transactional public class UserTest { @Autowired private HibernateTemplate hibernateTemplate; /** * 添加 */ @Test public void save(){ User user = new User(); user.setCreateTime(new Date()); user.setEditTime(user.getCreateTime()); user.setNickName("4444"); user.setSex("1"); user.setUserNo("232"); user.setPassword("333"); user.setStatusId("Y"); hibernateTemplate.save(user); } /** * 查看 */ @Test public void query(){ DetachedCriteria criteria = DetachedCriteria.forClass(User.class); criteria.add(Restrictions.like("userNo", "%22%")); List<User> list = (List<User>) hibernateTemplate.findByCriteria(criteria); System.out.println(list.size()); } /** * 更新 */ @Test public void update(){ User user = new User(); Long index = new Long(1); user.setId(index); user.setCreateTime(new Date()); user.setEditTime(user.getCreateTime()); user.setNickName("4444"); user.setSex("1"); user.setUserNo("2322"); user.setPassword("333"); user.setStatusId("Y"); hibernateTemplate.update(user); hibernateTemplate.flush(); } /** * 根据id删除 */ @Test public void delete(){ hibernateTemplate.delete(hibernateTemplate.get(User.class, (long)1)); hibernateTemplate.flush(); } }

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
高并发服务设计—缓存
1 缓存回收策略 1.1 基于空间 即设置缓存的存储空间,如设置为10MB,当达到存储空间时,按照一定的策略移除数据。 1.2 基于容量 基于容量指缓存设置了最大大小,当缓存的条目超过最大大小,则按照一定的策略将旧数据移除。 1.3 基于时间 TTL(Time To Live):存活期,即缓存数据从缓存中创建时间开始直到它到期的一个时间段(不管在这个时间段内有没有访问都将过期)。 TTI(Time To Idle):空闲期,即缓存数据多久没被访问过将从缓存中移除的时间。 1.4 基于Java对象引用 软引用:如果一个对象是软引用,那么当JVM堆内存不足时,垃圾回收器可以回收这些对象。软引用适合用来做缓存,从而当JVM堆内存不足时,可以回收这些对象腾出一些空间供强引用对象使用,从而避免OOM。 弱引用:当垃圾回收器回收内存时,如果发现弱引用,则将立即回收它。相对于软引用有更短的生命周期。 注意:弱引用/软引用对象只有当没有其他强引用对象引用它时,垃圾回收时才回收该引用。即如果有一个对象(不是弱引用/软引用)引用了弱引用/软引用对象,那么垃圾回收是不会回收该引用对象。 1.5 回收算法 使...
- 下一篇
redis 设置过期Key 的 maxmemory-policy 六种方式
redis 的优化免不了要配置的项 redis 官方提供的 conf https://raw.github.com/antirez/redis/2.2/redis.conf 中6中过期策略的具体方式。redis 中的默认的过期策略是volatile-lru 。设置方式 config set maxmemory-policy volatile-lru maxmemory-policy 六种方式 volatile-lru:只对设置了过期时间的key进行LRU(默认值) allkeys-lru:删除lru算法的key volatile-random:随机删除即将过期key allkeys-random:随机删除 volatile-ttl:删除即将过期的 noeviction:永不过期,返回错误
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2全家桶,快速入门学习开发网站教程
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,CentOS8安装Elasticsearch6.8.6
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案