Spring.xml
<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<bean id="com.spring.ch11.dao.hibernate.IDemoDao"
class="com.spring.ch11.dao.hibernate.DemoDaoImpl"
p:sessionFactory-ref="sessionFactory">
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>classpath:com/spring/ch11/dao/hibernate/hibernate.cfg.xml</value>
</property>
</bean>
</beans>
hibernate.cfg.xml
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.username">root</property>
<property name="connection.password">34060935</property>
<property name="show_sql">true</property>
<property name="connection.url">jdbc:mysql://localhost:3306/test</property>
<!-- Mapping files -->
<mapping resource="com/spring/ch11/dao/hibernate/demo.hbm.xml" />
</session-factory>
</hibernate-configuration>
Demo.hbm.xml
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.spring.ch11.dao.hibernate.Demo" table="demo">
<id type="int" name="id">
<generator class="native"></generator>
</id>
<property name="name" type="string"></property>
<property name="unitPrice" type="float"></property>
</class>
</hibernate-mapping>
Demo.java
package com.spring.ch11.dao.hibernate;
import java.io.Serializable;
public class Demo implements Serializable{
private int id;
private float unitPrice;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public float getUnitPrice() {
return unitPrice;
}
public void setUnitPrice(float unitPrice) {
this.unitPrice = unitPrice;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
IDemoDao.java
package com.spring.ch11.dao.hibernate;
import java.util.List;
public interface IDemoDao {
public Demo getById(int id);
public List<Demo> getAll();
}
DemoDaoImpl.java
package com.spring.ch11.dao.hibernate;
import java.util.List;
import org.hibernate.SessionFactory;
import org.springframework.orm.hibernate3.HibernateTemplate;
public class DemoDaoImpl implements IDemoDao {
private HibernateTemplate hibernateTemplate;
public void setSessionFactory(SessionFactory sessionFactory) {
this.hibernateTemplate = new HibernateTemplate(sessionFactory);
}
@Override
public Demo getById(int id) {
return (Demo) this.hibernateTemplate.find("from Demo d where d.id = " + id).get(0);
}
@Override
public List<Demo> getAll() {
return this.hibernateTemplate.find("from Demo d");
}
}
Client.java
package com.spring.ch11.dao.hibernate;
import java.util.List;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Client {
/**
* @param args
*/
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext(
"spring.xml", Client.class);
org.springframework.orm.hibernate3.LocalSessionFactoryBean localSessionFactoryBean = null;
DemoDaoImpl demoDaoImpl = (DemoDaoImpl) context.getBean(IDemoDao.class
.getName());
// doInsert(baseDAO);
Demo demo = demoDaoImpl.getById(1);
System.out.println(ToStringBuilder.reflectionToString(demo));
List<Demo> demoList = demoDaoImpl.getAll();
for (Demo demo2 : demoList) {
System.out.println(ToStringBuilder.reflectionToString(demo2));
}
}
}
分享到:
相关推荐
将Hibernate与Spring整合可以充分利用两者的优点,提高开发效率并降低复杂性。 一、Hibernate概述 Hibernate是Java世界中领先的ORM框架之一,它允许开发者用Java对象来操作数据库记录,而无需编写SQL语句。通过配置...
在整合过程中,开发者需要注意配置文件的正确设置,包括Struts2的struts.xml、Hibernate的hibernate.cfg.xml以及Spring的applicationContext.xml等。还需要确保各框架之间的依赖注入正确无误,例如,Spring需要知道...
2. 集成Hibernate:在Spring配置中声明Hibernate的SessionFactory Bean,配置Hibernate的相关属性,如hibernate.cfg.xml的位置、实体类扫描路径等。 3. 配置Struts2:设置Struts2的配置文件,定义Action类,这些...
在本教程中,我们将深入探讨如何使用Spring MVC、Spring和Hibernate三大框架进行全注解的整合开发。这个视频教程系列的第11部分,重点可能是建立在前几部分的基础之上,进一步深化对这三个核心技术的理解和实践。 ...
这通常通过XML或Java配置完成,包括Spring MVC的DispatcherServlet配置、数据源配置以及Hibernate SessionFactory配置。 2. 配置Spring MVC:设置DispatcherServlet,处理HTTP请求,并配置HandlerMapping和...
【标题】:“Hibernate、Struts2与Spring的整合项目” 【描述】:“这是一个将Hibernate、Struts2和Spring三大框架集成在一起的项目示例。它展示了如何在实际开发中有效地结合这三个强大的Java技术,实现数据持久层...
通过以上步骤,你已经成功地将Spring和Hibernate整合在一起,使用全XML配置方式实现了数据访问层。这种方式虽然较为繁琐,但能清晰地分离各层职责,便于管理和维护。在实际项目中,还可以考虑使用注解配置或者Spring...
整合过程中,通常会使用Spring来管理Struts2和Hibernate的bean,实现依赖注入。Action类可以在Spring容器中声明,通过@Autowired注解注入所需的Service层对象。Hibernate的SessionFactory和Transaction可以通过...
这个“Spring+hibernate整合源代码”应该包含了实现上述整合步骤的示例代码,可以作为学习和参考的资源。通过学习和实践这些代码,你可以更好地理解和掌握 Spring 和 Hibernate 整合的细节,提升你的 Java Web 开发...
3. **整合Hibernate和Spring**:在applicationContext.xml中配置SessionFactory,并声明User实体类的映射文件,让Spring管理SessionFactory。 4. **编写Action**:创建登录Action,处理用户提交的登录请求,通过...
本文将深入探讨Hibernate与Spring的整合过程,以及在项目中的实际应用。 一、Hibernate简介 Hibernate是一个强大的ORM框架,它为Java开发者提供了一种方便的方式来管理数据库操作。通过使用Hibernate,我们可以将...
在"10.6struts2+hibernate+spring的整合源代码"中,可能会看到Hibernate的实体类(Entity)、映射文件(.hbm.xml)以及SessionFactory的配置。这些文件用于定义模型对象与数据库表之间的关系,并提供CRUD(创建、...
1. 配置环境:首先需要在项目中引入Struts2、Hibernate和Spring的相应库,并配置相应的XML配置文件,如struts.xml、hibernate.cfg.xml、spring-context.xml等。 2. 创建模型:定义Java实体类,这些类对应数据库中的...
《Spring+Struts+Hibernate整合开发》是一本深入讲解企业级Java应用开发的书籍,它主要聚焦于三大著名开源框架——Spring、Struts和Hibernate的集成与应用。这些框架是Java Web开发中的基石,广泛应用于各种复杂的...
### Struts2、Spring、Hibernate使用XML的整合方式 #### 概述 本文档将详细介绍如何使用XML配置文件实现Struts2、Spring以及Hibernate(通常称为SSH)这三种技术的整合,以支持一个简单的商品管理系统。这个系统...
整合这些框架时,通常需要在`web.xml`中配置过滤器、监听器和Spring的上下文加载,同时在Spring配置文件中声明Bean并管理依赖。在Hibernate配置文件中设置数据库连接信息,以及Struts2的配置文件中定义Action和结果...
struts hibernate spring 实用整合 spring的配置文件(applicationContext.xml)中,配置了事务和一个日志功能的AOP的结合,是非常具有实用价值的针对初学者的入门实例。
Struts、Hibernate和Spring是Java开发中的三大框架,它们各自负责不同的职责,组合起来可以构建出高效、松耦合的企业级应用。SSH整合是指将这三个框架进行集成,以实现MVC(模型-视图-控制器)架构的完整解决方案。 ...
这本由蒲子明编著的《Struts 2+Hibernate+Spring整合开发技术详解》深入探讨了如何将这三个框架有效结合,以构建高效、模块化的Web应用。书中第12到17章的内容涵盖了以下几个关键知识点: 1. **Struts 2框架**: -...
当Struts、Hibernate和Spring整合时,通常Spring作为核心框架负责整个应用的管理,包括初始化Struts和Hibernate。Spring可以注入Action类中的依赖,比如DAO(Data Access Object)或Service层对象,这样就可以实现...