`

spring hibernate struts 整合开发(2)

阅读更多
一. 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整合开发】 在Java应用开发中,Spring、Hibernate和Struts是三个非常重要的框架,它们各自负责不同的职责。Spring作为一个轻量级的容器,提供了依赖注入和面向切面编程(AOP)等功能;...

    spring_struts_hibernate整合开发书籍

    《Spring+Struts+Hibernate整合开发》是一本深入讲解企业级Java应用开发的书籍,它主要聚焦于三大著名开源框架——Spring、Struts和Hibernate的集成与应用。这些框架是Java Web开发中的基石,广泛应用于各种复杂的...

    spring hibernate struts 整合开发所需jar包

    在Java Web开发中,Spring、Hibernate和Struts是三个非常重要的框架,它们分别负责不同的职责。Spring是一个全面的后端应用程序框架,提供了依赖注入、面向切面编程以及大量的企业级功能;Hibernate则是一个对象关系...

    spring hibernate struts整合

    在Spring和Struts整合时,Spring可以作为Action的依赖注入容器,提供业务对象给Struts,从而减少代码耦合。 4. **整合过程**: - **配置Spring**:创建Spring的配置文件,如`applicationContext.xml`,定义Bean的...

    hibernate struts2 和spring的整合项目

    【标题】:“Hibernate、Struts2与Spring的整合项目” 【描述】:“这是一个将Hibernate、Struts2和Spring三大框架集成在一起的项目示例。它展示了如何在实际开发中有效地结合这三个强大的Java技术,实现数据持久层...

    Spring+Struts2+hibernate+Redis整合

    在IT行业中,SSH(Spring、Struts2、Hibernate)是一个经典的Java Web开发框架组合,而Redis则是一个高性能的键值存储系统,常用于缓存和数据持久化。将SSH与Redis整合,可以提升应用程序的性能和响应速度。下面将...

    spring hibernate struts 整合

    在IT行业中,Spring、Hibernate和Struts是三个非常重要的开源框架,它们分别专注于不同领域的应用开发。Spring是一个全面的企业级应用开发框架,提供IOC(控制反转)和AOP(面向切面编程)等功能,用于简化Java应用...

    spring hibernate struts2 整合jar包

    通过整合这些jar包,开发者可以快速搭建一个具备持久层(Hibernate)、业务逻辑层(Spring)和表现层(Struts2)的完整Web应用,大大提高了开发效率和代码可维护性。在实际应用中,开发者还需要结合相应的配置文件...

    hibernate+spring+struts整合开发jar文件

    "hibernate+spring+struts整合开发jar文件"提供了这些框架所需的库文件,帮助开发者快速搭建开发环境,避免了因版本不兼容或缺失jar文件导致的问题。 1. Hibernate:作为Java领域的一个ORM(Object-Relational ...

    struts2 spring hibernate整合的简单登录代码

    Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们各自负责不同的职责:Struts2作为MVC框架处理请求和展示,Spring提供依赖注入和事务管理,Hibernate则作为ORM框架处理数据库操作。将这三个框架整合在...

    轻量级Java EE企业应用实战——Struts 2+Spring+Hibernate整合开发 全套电子书.part3

    轻量级Java EE企业应用实战——Struts 2+Spring+Hibernate整合开发电子书123全套.part3.rar

    struts+spring+hibernate整合

    Struts、Spring和Hibernate是Java Web开发中的三大主流框架,它们分别负责表现层、业务层和服务层的管理。Struts提供了MVC模式的实现,Spring则是一个全面的轻量级应用框架,包括依赖注入(DI)、面向切面编程(AOP...

    轻量级Java EE企业应用实战——Struts 2+Spring+Hibernate整合开发电子书1

    《轻量级Java EE企业应用实战——Struts 2+Spring+Hibernate整合开发电子书1》是一本专注于Java EE企业级应用开发的书籍,主要涵盖了Struts 2、Spring和Hibernate这三个流行开源框架的整合应用。这本书对于Java...

    Struts Spring Hibernate整合实践

    2. **Spring 与 Hibernate 整合**: - Spring 提供了对 Hibernate 的支持,可以方便地管理 SessionFactory 和 Transaction,通过AOP实现声明式事务管理,降低了代码的复杂性,提高了可维护性。 3. **整合流程**: ...

    struts2+spring+hibernate 整合的jar包

    Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们的整合(SSH)极大地提升了开发效率和项目的可维护性。下面将详细讲解这三大框架的核心功能以及整合过程中的关键知识点。 1. **Struts2**:Struts2是一...

    轻量级 J2EE 企业应用实战:Struts+Spring+Hibernate 整合开发

    《轻量级 J2EE 企业应用实战:Struts+Spring+Hibernate 整合开发》是一本深入探讨Java企业级应用程序开发的经典著作。该书主要围绕着三个核心框架——Struts、Spring和Hibernate,详细阐述了如何在J2EE环境下进行轻...

    Struts2_Spring_Hibernate整合开发实例

    在"Struts2_Spring_Hibernate整合开发实例"中,我们将深入探讨如何将这三个框架集成到一个项目中,实现无缝协作。这个实例提供了详细的步骤和代码示例,帮助开发者快速理解和掌握整合过程。 首先,Struts2的集成...

    Spring+Struts+Hibernate比较详细的整合配置方案

    2. **Struts整合** - 配置Struts的`struts-config.xml`文件,声明Action和ActionForm,设置Action的Forward规则。 - 创建ActionForm类,如`LoginForm`,定义表单字段,与JSP页面中的表单元素对应。 - 创建Action...

    maven整合spring+hibernate+struts2

    本项目“maven整合spring+hibernate+struts2”就是一个典型的Java Web开发模式,它利用Maven作为项目管理工具,Spring作为核心框架,Hibernate作为持久层解决方案,Struts2作为表现层控制器。以下将详细阐述这些技术...

    轻量级J2EE企业应用实战--Struts+Spring+Hibernate整合开发笔记

    轻量级 J2EE 企业应用实战 -- Struts+Spring+Hibernate 整合开发笔记 本资源为轻量级 J2EE 企业应用实战开发笔记,涵盖 Struts、Spring 和 Hibernate 三大框架的整合开发实践。笔记从 JDK 安装和配置环境变量开始,...

Global site tag (gtag.js) - Google Analytics