博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring开发_Spring+Hibernate_HibernateDaoSupport
阅读量:6677 次
发布时间:2019-06-25

本文共 3588 字,大约阅读时间需要 11 分钟。

原有项目:

修改类:

/spring+hibernate_hibernateDaoSupport/src/com/b510/service/impl/PersonServiceBean.java

1 package com.b510.service.impl;  2  3 import java.util.List;  4  5 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;  6 import org.springframework.transaction.annotation.Propagation;  7 import org.springframework.transaction.annotation.Transactional;  8  9 import com.b510.domain.Person; 10 import com.b510.service.PersonService; 11 12 /** 13  * 使用注解方式进行事务管理 14  * 15  * @author Hongten 16  * 17  */ 18 public class PersonServiceBean extends HibernateDaoSupport implements 19         PersonService {
20 21 @Override 22 public void delete(Integer id) {
23 getHibernateTemplate().delete(getPerson(id)); 24 } 25 26 // 在查询的时候,不需要开启事务,并且指定为只读,这样可以提高查询效率 27 @Override 28 @Transactional(propagation = Propagation.NOT_SUPPORTED, readOnly = true) 29 public Person getPerson(Integer id) {
30 return (Person) getHibernateTemplate().get(Person.class, id); 31 } 32 33 // 在查询的时候,不需要开启事务,并且指定为只读,这样可以提高查询效率 34 @Override 35 @Transactional(propagation = Propagation.NOT_SUPPORTED, readOnly = true) 36 @SuppressWarnings("unchecked") 37 public List
getPerson() {
38 return getHibernateTemplate().find("from Person"); 39 } 40 41 @Override 42 public void save(Person person) {
43 getHibernateTemplate().save(person); 44 } 45 46 @Override 47 public void update(Person person) {
48 getHibernateTemplate().update(person); 49 } 50 }

/spring+hibernate_hibernateDaoSupport/src/bean.xml

修改为这样:

1     
2
3

HibernateDaoSupport提供了如下方法:

public final HibernateTemplate getHibernate();

public final void setSessionFactory(SessionFactory sessionFactory)

运行效果:

1 log4j:WARN No appenders could be found for logger (org.springframework.context.support.ClassPathXmlApplicationContext).  2 log4j:WARN Please initialize the log4j system properly.  3 Hibernate:  4     select  5         max(id)  6     from  7         person  8 Hibernate:  9     insert 10     into 11         spring.person 12         (name, age, sex, id) 13     values 14         (?, ?, ?, ?) 15 Hibernate: 16     select 17         person0_.id as id0_0_, 18         person0_.name as name0_0_, 19         person0_.age as age0_0_, 20         person0_.sex as sex0_0_ 21     from 22         spring.person person0_ 23     where 24         person0_.id=? 25 Hibernate: 26     update 27         spring.person 28     set 29         name=?, 30         age=?, 31         sex=? 32     where 33         id=? 34 Hibernate: 35     select 36         person0_.id as id0_0_, 37         person0_.name as name0_0_, 38         person0_.age as age0_0_, 39         person0_.sex as sex0_0_ 40     from 41         spring.person person0_ 42     where 43         person0_.id=? 44 Hibernate: 45     select 46         person0_.id as id0_, 47         person0_.name as name0_, 48         person0_.age as age0_, 49         person0_.sex as sex0_ 50     from 51         spring.person person0_ 52 ******************* 53 2  hanyuan  21  男 54 3  hongten  21  男 55 4  hongten  21  男 56 5  hello  12  M 57 6  hongten  12  M 58 7  hongten2  12  M 59 8  hw  20  M 60 9  hongten  21  男 61 10  hongten  21  男 62 11  hongten  21  男 63 Hibernate: 64     select 65         person0_.id as id0_0_, 66         person0_.name as name0_0_, 67         person0_.age as age0_0_, 68         person0_.sex as sex0_0_ 69     from 70         spring.person person0_ 71     where 72         person0_.id=?

结果是一样一样的哦。

转载地址:http://acyao.baihongyu.com/

你可能感兴趣的文章
前端-记录小技巧
查看>>
《前端面试之道-JS篇》(下)
查看>>
了解脱字符 npm 中(^)的作用吗
查看>>
Effective Java
查看>>
Fiddler 手机抓包
查看>>
setState解析
查看>>
程序员之路 学习经验总结 副本2
查看>>
Blockchain can be Blocked(比特币网络通讯底层漏洞详解)
查看>>
[译] 完美的 Javascript 单元测试
查看>>
JDK SPI
查看>>
Python如何利用双色球每天薅个煎饼果子
查看>>
Vue provide/inject 部分源码分析 实现响应式数据更新
查看>>
浅谈Docker的安全性支持(上篇)
查看>>
IOC的概念这样理解更简单
查看>>
dubbo集群之Router模块
查看>>
漫话:如何给女朋友解释什么是编译与反编译
查看>>
新时代下如何做品牌之传统做法
查看>>
升级到swift5之后HandyJSON报错
查看>>
Docker for Windows 里的Shared Drives 设置不生效
查看>>
Mark Text 支持斗图的 markdown 编辑器
查看>>