一、实体类
public class User {
private int id;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
}
对应数据库映射文件
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.job.model">
<class name="User" table="Users">
<id name="id" column="USER_ID">
<generator class="native"/>
</id>
<property name="name" type="java.lang.String">
<column name="name">
</column>
</property>
</class>
</hibernate-mapping>
二.处理DAO接口
public interface UserDAO {
public void save(User u);
}
对应处理DAOImpl实现
@Component
public class UserDAOImpl implements UserDAO{
private SessionFactory sessionFactory;
public void save(User u) {
try {
Session s = sessionFactory.openSession();
s.beginTransaction();
s.save(u);
s.getTransaction().commit();
} catch (Exception e) {
e.printStackTrace();
}
}
public SessionFactory getSessionFactory() {
return sessionFactory;
}
@Resource(name="sessionFactory")
public void setSessionFactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
}
将在spring容器内的sessionFactory注入到处理层中,处理数据
三。服务层
@Component
public class UserService {
private UserDAO userDAO;
public void add(User u){
this.userDAO.save(u);
}
public UserDAO getUserDAO() {
return userDAO;
}
@Resource(name="userDAOImpl")
public void setUserDAO(UserDAO userDAO) {
this.userDAO = userDAO;
}
}
将DAOImpl实现bean注入到服务层,供Action调用。
四、spring容器applicationContext.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:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd">
<!-- 配置自动装配 AutowiredAnnotationBeanPostProcessor等接口,实现注入等功能 -->
<context:annotation-config/>
<!-- 配置扫描包路径,将包下所有组件实例化 -->
<context:component-scan base-package="com.job"/>
<!-- 声明一个处理实现类 -->
<bean id="userDAOImpl" class="com.job.dao.UserDAOImpl">
<!-- 将sessionFactory注入到处理实理类中 -->
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<!-- 在spring容器中,创建数据库连接Bean -->
<bean id="DataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=utf8"/>
<property name="username" value="root"/>
<property name="password" value="admin"/>
</bean>
<!-- 创建hibernate的sessionFactory -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<!-- 将spring容器中存在的数据库连接Bean,配置到sessionFactory中 -->
<property name="dataSource" ref="DataSource"/>
<!-- 配置hibernate映射实体对象到表的文件 -->
<property name="mappingResources">
<list>
<value>com/job/model/user.hbm.xml</value>
</list>
</property>
<!-- 配置hibernate属性,方言,显示sql,是否创建数据表 -->
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
</bean>
</beans>
五、测试
public class UserServiceTest {
public static void main(String[] args) {
ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
UserService service = (UserService)ac.getBean("userService");
User u = new User();
u.setName("haha success!!");
service.add(u);
}
}
分享到:
相关推荐
讲述了关于连接池、eclipse、Struts、Spring、Hibernate、iBatis、XML、LOG4J等等的知识点
本系统采用struts+spring+hibernate架构,重在讲述三者结合在一起的应用开发,所有源程序都有详细的注释,供入门者学生参考,未经作者允许不得用于商业用途,只能用于教学或个人学习。 程序只是整个系统中的一个模块...
Spring4.0和_Hibernate4.0加上_Struts2.3整合的配置文件
Struts2.0_Hibernate3_spring2.0 部署Web应用请按如下步骤进行: 1. 进入reg_login路径下,将mysql.sql脚本中的语句导入MySQL数据库。 2. 修改reg_login\WEB-INF路径下的applicationContext.xml文件,将其中的...
Flex_Spring3_Hibernate3整合Demo,使用RemoteObject调用java代码。主要配置为applicationContext.xml,web.xml,services-config.xml,remoting-config.xml。另外要引入SpringFactory类。
Spring-hibernate结合使用全xml配置方式
struts2.1_spring2.5.6_hibernate3.3采用xml配置文件整合所需基本jar包
struts2-spring4-hibernate4_xml包含XML配置和注解配置的三大框架。
由hibernate5 根据映射文件Person.hbm.xml自动生成person表,表结构可参考如下sql语句 /* Navicat MySQL Data Transfer Source Server : MYSQL56 Source Server Version : 50624 Source Host : localhost:3306 ...
JavaEE spring和Hibernate整合(没有hibernate.cfg.xml)
│ Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_3.xml │ Maven__mysql_mysql_connector_java_8_0_19.xml │ Maven__net_bytebuddy_byte_buddy_1_10_8.xml │ Maven__...
JavaEE spring和Hibernate整合(有hibernate.cfg.xml)
a 加入支持:添加 spring核心包、hibernate 3.6 包、 spring整合hibernate包 , 在src下建立applicationContext.xml (先建立src下便于测试hibernate)。 b 编写实体类,加入hibernate注解,编写方法类测试类,在...
12.6.16 编写Spring和Hibernate的配置文件spring-config.xml 12.6.17 编写web.xml 12.6.18 验证示例 12.7 小结 第四篇 J2EE项目案例精选 第十三章 网上调查系统 13.1 系统概述 13.2 需求分析 13.2.1 系统用例图 ...
spring整合hibernate实现事务处理 1.spring整合hibernate实现事务处理-注解方式 2.spring整合hibernate实现事务处理-XML方式
完全使用Annotation,及XML,各立独立与配合混合使用,有加注释,我也是初学者,适合新手,老鸟免了
解决这个问题的方法有两种:一种是在 web.xml 中使用 Spring 提供的 OpenSessionInViewFilter,另一种是在 application.xml 中配置 OpenSessionInViewFilter。前者通用,后者只能用于 SpringMVC 结构中。 最后,...
struts2+spring+hibernate整合(xml),测试环境:myeclipse2014,jdk1.6,javaee6
spring2.5+hibernate基于xml配置的实例
•装载Spring的applicationContext.xml文件 •建立业务层和DAO之间的依赖关系 •将Spring应用到Struts中 简介 这个例子是建立一个简单的web应用,叫MyUsers,完成用户管理操作,包含简单的数据库增,删,...