一. spring hibernate struts 整合开发(1) - 搭建环境
二. spring hibernate struts 整合开发(2) - Spring集成的Hibernate编码和测试
三. spring hibernate struts 整合开发(3) - Struts集成Spring
四. spring hibernate struts 整合开发(4) - Struts与Spring集成2
五. spring hibernate struts 整合开发(5) - Hibernate二级缓存
六. spring hibernate struts 整合开发(6) - 额外功能
Spring集成的Hibernate编码与测试
1. 新建一个业务bean:com.john.service.impl.PersonServiceBean
@Transactional
public class PersonServiceBean implements PersonService {
@Resource private SessionFactory sessionFactory;
public void save(Person person) {
sessionFactory.getCurrentSession().persist(person);
}
public void update(Person person) {
sessionFactory.getCurrentSession().merge(person);
}
@Transactional(propagation=Propagation.NOT_SUPPORTED, readOnly=true)
public Person getPerson(Integer id) {
return (Person)sessionFactory.getCurrentSession().get(Person.class, id);
}
public void delete(Integer id) {
sessionFactory.getCurrentSession().delete(
sessionFactory.getCurrentSession().load(Person.class, id));
}
@Transactional(propagation=Propagation.NOT_SUPPORTED, readOnly=true)
public List<Person> getPersons() {
return sessionFactory.getCurrentSession().createQuery("from Person").list();
}
a. sessionFactory是通过@Resource来注入的,所以在beans.xml中必须有<context:annotation-config />
b. getXXX方法不需要事务,并且是只读的
2. 新建一个jUnit测试类:junit.test.PersonServiceTest
public class PersonServiceTest {
private static PersonService personService;
@BeforeClass
public static void setUpBeforeClass() throws Exception {
ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
personService = (PersonService)ctx.getBean("personService");
}
@Test
public void testSave() throws UnsupportedEncodingException {
Person person = new Person();
person.setName("John");
personService.save(person);
}
@Test
public void testUpdate() {
Person person = personService.getPerson(1);
person.setName("Lisa");
personService.update(person);
}
@Test
public void testGetPerson() {
Person person = personService.getPerson(1);
System.out.println(person.getName());
}
@Test
public void testDelete() {
personService.delete(1);
}
@Test
public void testGetPersons() {
List<Person> persons = personService.getPersons();
for (Person p : persons)
System.out.println(p.getName());
}
对bean的方法分别进行测试。
整理自:传智播客spring教程
分享到:
相关推荐
spring hibernate struts整合开发实例
spring hibernate struts 整合开发所需jar包 很给力
struts+spring+hibernate整合
轻量级Java EE企业应用实战——Struts 2+Spring+Hibernate整合开发电子书123全套.part3.rar
Struts+Spring+Hibernate整合开发详解
绝对详细的整合教材,值得你们拥有!!!目前流行的框架
Struts2_Spring_Hibernate整合开发实例 同名视频的完整资料 超值
轻量级JavaEE企业应用实战_Struts2+Spring3+Hibernate整合开发_第3版.part5
比较流行的一本书,在公司内很受欢迎 比较实用 下半部分,需与上半部分放在一起解压。
轻量级 J2EE 企业应用实战:Struts+Spring+Hibernate 整合开发
Struts2+Hibernate+Spring整合开发深入剖析与范例应用03源码
轻量级JavaEE企业应用实战_Struts2+Spring3+Hibernate整合开发_第3版.part2
轻量级Java EE企业应用开发实战—光盘——Struts 2+Spring+Hibernate整合开发 李刚 网络资源 互相学习 侵权自删
轻量级J2EE企业应用实战--Struts+Spring+Hibernate整合开发笔记
《轻量级Java EE企业应用实战:Struts2+Spring3+Hibernate整合开发(第3版)》介绍了Java EE领域的三个开源框架:Struts 2、Spring和Hibernate。其中Struts 2升级到2.2.1,Spring升级到3.0.5,Hibernate升级到了...
Hibernate+Spring+Struts2+ExtJS整合开发实例 非常经典!学习的好帮助!
struts2和spring和Hibernate的整合包,在MyEclipse中自动导入老是有冲突包。
轻量级Java EE企业应用实战 (第4版) Struts 2 Spring 4 Hibernate整合开发