struts2+spring+hibernte整合示例
简单实现添加用户功能,仅供初学者参考,可自行扩展程序功能(增删改查)。
这里贴下代码,需要的可以下载看(因为比较懒)。
applicationContext.xml
![](/assets/blank.gif)
![](/assets/blank.gif)
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:p="http://www.springframework.org/schema/p" xmlns:util="http://www.springframework.org/schema/util" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:cache="http://www.springframework.org/schema/cache" xsi:schemaLocation=" http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.1.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd"> <!-- 引入外部配置文件 --><context:property-placeholder location="classpath:jdbc.properties"/><!-- 配置连接池 --><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"><property name="driverClass" value="${jdbc.driverClass}"/><property name="jdbcUrl" value="${jdbc.url}"/><property name="user" value="${jdbc.username}"/><property name="password" value="${jdbc.password}"/></bean><!-- 配置Hibernate相关属性 --><bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"><!-- 注入连接池 --><property name="dataSource" ref="dataSource"/><!-- 配置Hibernate的属性 --><property name="hibernateProperties"><props><prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop><prop key="hibernate.show_sql">true</prop><prop key="hibernate.format_sql">true</prop><prop key="hibernate.hbm2ddl.auto">update</prop></props></property><!-- 加载Hibernate中的映射文件 --><property name="mappingResources"><list><value>cn/bj/ssh/entity/User.hbm.xml</value></list></property></bean><!-- 配置Action类 --><bean id="userAction" class="cn.bj.ssh.action.UserAction" scope="prototype"><!-- 手动注入service --><property name="userService" ref="userService"/></bean><!-- 配置业务的类 --><bean id="userService" class="cn.bj.ssh.service.UserService"><property name="userDao" ref="userDao"/></bean><!-- 配置DAO的类 --><bean id="userDao" class="cn.bj.ssh.dao.UserDao"><property name="sessionFactory" ref="sessionFactory"/></bean><!-- 配置事务管理器 --><bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"><property name="sessionFactory" ref="sessionFactory"/></bean><!-- 开启注解事物 --><tx:annotation-driven transaction-manager="transactionManager"/></beans>
View Code
连接数据库配置:jdbc.properties
![](/assets/blank.gif)
![](/assets/blank.gif)
# JDBC Configuration jdbc.driverClass=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:3306/ssh jdbc.username=root jdbc.password=root
View Code
struts.xml
![](/assets/blank.gif)
![](/assets/blank.gif)
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd"><struts><!-- 交由spring管理 直接写id即可 --><package name="ssh" extends="struts-default" namespace="/"><action name="user_*" class="userAction" method="{1}"><result name="loginSuccess">/index.jsp</result><!-- <result name="success_save">/index.jsp</result>--></action></package></struts>
View Code
UserAction.java
![](/assets/blank.gif)
![](/assets/blank.gif)
package cn.bj.ssh.action;import com.opensymphony.xwork2.ActionSupport; import com.opensymphony.xwork2.ModelDriven;import cn.bj.ssh.entity.User; import cn.bj.ssh.service.UserService;public class UserAction extends ActionSupport implements ModelDriven<User>{private static final long serialVersionUID = 1L;//模型驱动使用的类private User user = new User();//自动注入private UserService userService;public void setUserService(UserService userService) {this.userService = userService;}@Overridepublic User getModel() {return user;}//保存用户public String save(){userService.save(user);return "loginSuccess";}}
View Code
UserService.java(由于比较简单,看起来更直观,service和dao就没有写接口)
![](/assets/blank.gif)
![](/assets/blank.gif)
package cn.bj.ssh.service;import org.springframework.transaction.annotation.Transactional;import cn.bj.ssh.dao.UserDao; import cn.bj.ssh.entity.User;@Transactional public class UserService{private UserDao userDao;public void setUserDao(UserDao userDao) {this.userDao = userDao;}public void save(User user){userDao.save(user);}}
View Code
UserDao.java
![](/assets/blank.gif)
![](/assets/blank.gif)
package cn.bj.ssh.dao;import org.hibernate.SessionFactory;import cn.bj.ssh.entity.User;public class UserDao {private SessionFactory sessionFactory;public void setSessionFactory(SessionFactory sessionFactory) {this.sessionFactory = sessionFactory;}public String save(User user) {this.sessionFactory.getCurrentSession().save(user);return "success_save";}}
View Code
实体类User.jsp
![](/assets/blank.gif)
![](/assets/blank.gif)
package cn.bj.ssh.entity;public class User {private Integer pid;private String name;private String password;private Double height;public User(){}public User(Integer pid, String name, String password,Double height) {super();this.pid = pid;this.name = name;this.password = password;this.height = height;}public Integer getPid() {return pid;}public void setPid(Integer pid) {this.pid = pid;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public Double getHeight() {return height;}public void setHeight(Double height) {this.height = height;}}
View Code
映射文件:User.hbm.xml
![](/assets/blank.gif)
![](/assets/blank.gif)
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <%@ taglib uri="/struts-tags" prefix="s"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body><h1>保存用户页面</h1><s:form action="user_save" method="post" namespace="/" theme="simple"><table border="1" width="400"><tr><td>用户名</td><td><s:textfield name="name" /></td></tr><tr><td>用户密码</td><td><s:textfield name="password" /></td></tr><tr><td>用户身高</td><td><s:textfield name="height" /></td></tr><tr><td colspan="2"><input type="submit" value="添加" /></td></tr></table></s:form> </body> </html>
View Code
添加用户页面:addUser.jsp
![](/assets/blank.gif)
![](/assets/blank.gif)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-mapping PUBLIC"-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping><class name="cn.bj.ssh.entity.User" table="user"><id name="pid" column="pid"><generator class="native"/></id><property name="name" column="name" length="20"></property><property name="password" column="password" length="20"/><property name="height" column="height"/></class> </hibernate-mapping>
View Code
Demo链接,有兴趣的可以下载看看。
http://share.weiyun.com/b0a8c4fb51feaed92c69af29c5232d81
转载于:https://www.cnblogs.com/mottled/p/6024943.html
struts2+spring+hibernte整合示例相关推荐
- Spring、Struts2+Spring+Hibernate整合步骤
所使用的Jar包: Hibernate: Spring(使用MyEclipse自动导入框架功能) Struts2: 注解包和MySql驱动包: 1.配置Hibernate和Spring: <be ...
- struts2 spring jfreechart 整合
jfreechart和servlet结合使用很简单,只要把图片生成了就能通过servlet显示到画面上去,jfreechart和struts2的结合使用其实看上去也很简单,网上大部分方法都是用< ...
- liferay + struts2 + spring + ibatis整合开发案例
1 首先 开发的工程和案例是根据另外一个人博客进行开发的 开发地址如下: http://sweat89.iteye.com/blog/1686206 2 按照这位前辈的开发,搭建好后发现有很多问题, ...
- Struts2+Hibernate+Spring 整合示例
转自:https://blog.csdn.net/tkd03072010/article/details/7468769 Struts2+Hibernate+Spring 整合示例 Spring整合S ...
- Struts2+Spring+Hibernate的整合
整体程序结构 1.maven依赖 <!--实现Struts2+Spring+Hibernate的整合 --><dependencies><!--Spring --> ...
- Struts2+spring+jdbc 以xml配置形式整合
今天做作业,练习一下Struts2+spring+jdbc 以xml配置形式整合 整合步骤: 工程结构图: 重要配置文件 web.xml <?xml version="1.0" ...
- struts2+hibernate-jpa+Spring+maven 整合(1)
1.0.0 struts2 与 spring 的整合. 1.1.0 新建maven工程 , 编写pom.xml ,这里只需要简单的添加 一个组件就够了: 在myeclipse 生成的pom.xml 添 ...
- SSH之IDEA2017整合Struts2+Spring+Hibernate
摘要 IDEA无疑是Java编程的利器,在下面我们将介绍如何使用IDEA来整合SSH(Struts2 + Spring + Hibernate):介绍將分为三个部分来讲,分别是新建工程,Spring引 ...
- 【struts2+spring+hibernate】ssh框架整合开发
SSH框架整合 1 Struts2+Spring+Hibernate导包 Struts2导入jar包: * struts2/apps/struts2-blank.war/WEB-INF/lib/*.j ...
- Spring Boot 综合示例-整合thymeleaf、mybatis、shiro、logging、cache开发一个文章发布管理系统...
一.概述 经过HelloWorld示例(Spring Boot 快速入门(上)HelloWorld示例)( Spring Boot 快速入门 详解 HelloWorld示例详解)两篇的学习和练习,相 ...
最新文章
- 动画演示10个有趣但毫无用处的Linux命令
- 用libevent实现简易的telnet
- iOS 关于集成融云IM的一些常用方法
- the title and note has maintained the same text type
- 某同学工作之后的感悟
- 【转载】 C#使用string.IsNullOrWhiteSpace方法判断字符串是否为非空字符
- 总结替换jar包中指定文件的步骤
- 【BZOJ3681】Arietta,主席树优化网络流
- SpringBoot前端Ajax以JSON格式获取后台数据
- C#-记录一些常见的语法特性
- 服务器 'server_1' 上的 MSDTC 不可用
- 把栏杆拍遍--辛弃疾
- msfconsole命令大全,以及使用说明
- mysql2008无法启动_SQL Sever2008r2 数据库服务各种无法启动的解决办法
- delphi经典大写数字转换函数
- Android内存优化:Reckon(二)
- execjs 调用js出现找不到windows对象
- 网页调用腾讯qq在线客服
- 嵌入式分享合集144
- 婚介机构实名认证系统接口介绍