- 浏览: 62924 次
- 性别:
- 来自: 北京
最新评论
-
springdata-jpa:
java quartz定时任务demo教程源代码下载,地址:h ...
Spring--Quartz 任务调度的配置详解 -
wujianjun12315:
...
java定时器实例 -
Hillen.chan:
cainiaobos 写道import org.apache. ...
Java HttpClient实例 -
cainiaobos:
import org.apache.commons.httpc ...
Java HttpClient实例 -
wanghonghui023:
写的很好,学习了
java定时器实例
整体步骤是:
1、先加入Struts2
2、加入Spring2.5
3、加入Hibernate3.2
具体步骤是:
1、建个Web项目,而Eclipse里是Tomcat project
2、加入Struts2的核心包,(自己找吧网上很多)
3、写个web.xml放Web-Info下
4、写个三个很简单的jsp文件login.jsp/success.jsp/error.jsp
5、写个Struts.xml文件放src下
6、写个action
7、以上这些文件对测试配好Struts2基本完成。其中还加入了一下配置Spring的应该能看出来在web.xml和Struts.xml中。
8、开始配置Spring,写个applicationContext.xml放Web-Info下
9、写个业务类,我这里用的是bo结尾,值得注意的是我的业务层和Hibernate层我都是用接口和实现类的方式。
LoginBoImpl.java
10、写到这里,Spring的事物基本上已经完成,(其中在applicationContext.xml中也加入了Hibernate的配置)
11、开始写Hibernate层,先写个po对象PoUser.java
12、写个映射文件User.hbm.xml
13、写个dao类,UserDaoImpl.java
14、此时,所有配置完成,写的类都很简单,所以没有用多长时间,接下来准备加入Ajax,还有Hibernate的缓存。
朋友们如果你看了我的事物控制,估计会提出疑问,我只是在Hibernate层进行了事务管理,
其实应该包装在业务层,就是我上面提的bo层,而action就没有这个必要了。
----------------原创:http://lcj1112.iteye.com/blog/462673
1、先加入Struts2
2、加入Spring2.5
3、加入Hibernate3.2
具体步骤是:
1、建个Web项目,而Eclipse里是Tomcat project
2、加入Struts2的核心包,(自己找吧网上很多)
3、写个web.xml放Web-Info下
<listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
4、写个三个很简单的jsp文件login.jsp/success.jsp/error.jsp
<body> <s:form action="action_executeFunction" namespace="/"> 名称:<s:textfield name="user.name"/> 密码:<s:textfield name="user.password"/> <input type="submit" value="提交"/> </s:form> </body> <body> this is success page/ </body> <body> this is error page. </body>
5、写个Struts.xml文件放src下
<!-- 配置中文支持 --> <constant name="struts.custom.i18n.resources" value="alternate" /> <!-- 配置Spring--> <constant name="struts.objectFactory" value="spring" /> <package name="user" namespace="/" extends="struts-default"> <global-results> <result name="message">/WEB-INF/page/message.jsp</result> </global-results> <action name="action_*" method="{1}" class="com.***.action.LoginAction" > <result name="input">login.jsp</result> <result name="error">error.jsp</result> <result name="success">success.jsp</result> </action> </package>
6、写个action
public class LoginAction extends ActionBase{ private User user = new User(); private ILoginBo loginBo ; public String input() throws Exception { this.user.setName("llll"); return INPUT; } public void validateExecuteFunction() throws Exception{ if(user.getName() == null || user.getPassword() == null ){ this.redraw(); } } public String executeFunction() throws Exception { //ILoginBo loginBean = (ILoginBo)this.appContext.getBean("LoginBo"); if(!loginBo.isExits(user.getName())){ loginBo.addUser(user); return SUCCESS; } return ERROR; } public String redraw() throws Exception { return ERROR; } public ILoginBo getLoginBo() { return loginBo; } public void setLoginBo(ILoginBo loginBo) { this.loginBo = loginBo; } public User getUser() { return user; } public void setUser(User user) { this.user = user; } }
7、以上这些文件对测试配好Struts2基本完成。其中还加入了一下配置Spring的应该能看出来在web.xml和Struts.xml中。
8、开始配置Spring,写个applicationContext.xml放Web-Info下
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:amq="http://activemq.apache.org/schema/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd"> <!-- 这里scope="prototype"代表Action层不是单例模式,每次请求都会新创建一个对象--> <bean id="loginActionBean" class="com.***.action.LoginAction" scope="prototype"> <property name="loginBo" ref="loginBo"/> <property name="user" ref="userBean"/> </bean> <!-- 而Bo层默认都是单例的才能进行事物管理--> <bean id="loginBo" class="com.***.bo.impl.LoginBoImpl"> <property name="userDao"> <ref bean="userDao"/> </property> </bean> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName" value="org.gjt.mm.mysql.Driver"> </property> <property name="url" value="jdbc:mysql://localhost:3306/liucj"/> <property name="username" value="cc"/> <property name="password" value="cc"/> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource"/> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </prop> </props> </property> <property name="mappingResources"> <list> <value>com/****/dao/po/User.hbm.xml</value> </list> </property> </bean> <bean id="hibernateTransactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory"> <ref local="sessionFactory"/> </property> </bean> <!--Dao事务代理Bean的配置 --> <bean id="daoTemplate" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true"> <property name="transactionManager"> <ref bean="hibernateTransactionManager"/> </property> <property name="transactionAttributes"> <props> <prop key="save*">PROPAGATION_REQUIRED,-MyCheckedException</prop> <prop key="delete*">PROPAGATION_REQUIRED,-MyCheckedException</prop> <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop> <prop key="load*">PROPAGATION_REQUIRED,readOnly</prop> </props> </property> </bean> <bean id="userDao" parent="daoTemplate"> <property name="target"> <ref bean="userDaoTarget"/> </property> </bean> <bean id="userDaoTarget" class="com.***.dao.impl.UserDaoImpl"> <property name="sessionFactory"> <ref local="sessionFactory"/> </property> </bean> </beans>
9、写个业务类,我这里用的是bo结尾,值得注意的是我的业务层和Hibernate层我都是用接口和实现类的方式。
LoginBoImpl.java
public class LoginBoImpl implements ILoginBo { private IUserDao userDao ; public IUserDao getUserDao() { return userDao; } public void setUserDao(IUserDao userDao) { this.userDao = userDao; } @Override public boolean isExits(String name) { // TODO Auto-generated method stub if(name.equals("liucj")){ return true; } return false; } @Override public void addUser(User user) { // TODO Auto-generated method stub try{ PoUser poUser = new PoUser(); poUser.setId(0); poUser.setName(user.getName()); poUser.setPassword(user.getPassword()); this.userDao.saveUser(poUser); }catch(Exception ex){ ex.printStackTrace(); } } }
10、写到这里,Spring的事物基本上已经完成,(其中在applicationContext.xml中也加入了Hibernate的配置)
11、开始写Hibernate层,先写个po对象PoUser.java
public class PoUser { private int id ; private String name ; private String password ; public int getId() { return id; } public void setId(int id) { this.id = id; } 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; } }
12、写个映射文件User.hbm.xml
<?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="com.***.dao.po.PoUser" table="user" catalog="liucj"> <id name="id" type="java.lang.Integer"> <column name="id" length="4" /> </id> <property name="name" type="java.lang.String" not-null="true"> <column name="username" length="30" /> </property> <property name="password" type="java.lang.String"> <column name="password" length="30" /> </property> </class> </hibernate-mapping>
13、写个dao类,UserDaoImpl.java
public class UserDaoImpl extends HibernateDaoSupport implements IUserDao{ @Override public void saveUser(PoUser poUser) { this.getHibernateTemplate().saveOrUpdate(poUser); } }
14、此时,所有配置完成,写的类都很简单,所以没有用多长时间,接下来准备加入Ajax,还有Hibernate的缓存。
朋友们如果你看了我的事物控制,估计会提出疑问,我只是在Hibernate层进行了事务管理,
其实应该包装在业务层,就是我上面提的bo层,而action就没有这个必要了。
----------------原创:http://lcj1112.iteye.com/blog/462673
发表评论
-
Spring--Quartz 任务调度的配置详解
2012-01-06 16:39 13391Quartz调度器为调度工作提供了更丰富的支持。和Java定时 ... -
Java日期操作集锦
2012-01-06 16:28 1219[size=small][/size]java处理日期时间 相 ... -
Eclipse 插件安装方法和插件加载失败解决办法
2011-06-28 14:55 2343一:是利用Eclipse Software ... -
dom4j方式写入与解析XML
2011-01-13 14:58 3992package com.dheaven.mip.item; ... -
使用DWR注解Annotation
2011-01-13 14:56 1607文章分类:Web前端 Struts 2,Spring,Hib ... -
Hibernate查询Query By Criterial
2011-01-05 16:35 1890提供的检索方式: (1)导航对象图检索方式 (2)OID检索 ... -
Struts 2 + Spring 2.0 + Hibernate 3.0整合笔记
2011-01-04 11:20 11801. 添加Spring 2.0的Libraries ... -
Java HttpClient实例
2010-12-16 15:58 3657package com.dheaven.mip.item; ... -
Java 上传文件
2010-12-15 10:29 12651,JSP页面 Java代码 < ... -
java读取和写入excel
2010-12-15 10:26 1952需jxl.jar包 package com.dheaven ... -
service注入Action
2010-12-14 17:45 19121.老爸操持型 这种类型,即是在BaseAction中提供 ... -
hibernate分页
2010-12-10 14:33 7290这里想说的代码主要是泛型DAO层的应用与分页的写法. 分 ... -
JAVA排序汇总
2010-12-03 14:43 835package com.softeem.jbs.lesson4 ... -
解决UTF-8乱码问题
2010-11-29 09:06 1173为了顺利的开发一个多语言的国际化J2EE程序,需要修改数据库字 ... -
MyEclipse优化收集
2010-11-08 16:33 1129第一步: 取消自动validation validation有 ... -
log4j详细配置
2010-10-30 11:21 874Log4J的配置文件(Configurat ... -
applicationContext.xml 配置说明
2010-10-30 11:18 1042<?xml version="1.0" ... -
struts2.0之struts.xml详解
2010-10-26 11:09 988XML文件代码 <!DOCTYPE st ... -
如何创建一个进程,如何进程调用进程
2010-09-06 17:01 1543java一般用线程就够了, ... -
关于Runtime.exec()的用法
2010-09-06 16:45 2117public Process exec(String comm ...
相关推荐
Struts2、Spring2.5和Hibernate3.2是Java Web开发中经典的三大框架,它们的整合使用在过去的许多年里被广泛应用于企业级应用系统。这个完整的项目提供了从开发环境到运行环境的所有必要组件,包括数据库脚本,使得...
由于上传限制,lib包不能上传,大家可以下载spring2.5版本的支持库(下最大的那个zip包),全部加进去就行了,还有mysql的连接包,项目很简单,直接导入eclipse,就可以使用,包内有mysql的sql文件,框架已经搭好,...
Struts1、Spring2.5和Hibernate3.0是Java Web开发中经典的SSH(Spring、Struts、Hibernate)集成框架的三个组件,它们在2000年代末期至2010年代初广泛应用于企业级应用开发。SSH框架组合为开发者提供了模型-视图-...
本系统采用struts+spring+hibernate架构,重在讲述三者结合在一起的应用开发,所有源程序都 有详细的注释,供入门者学生参考,未经作者允许不得用于商业用途,只能用于教学或个人学习。 程序只是整个系统中的一个...
### Java8 + Tomcat8 + Struts2.5 + Spring4.3 + Hibernate5.2 框架搭建详细过程 #### 一、环境配置与准备 在搭建一个基于Java8 + Tomcat8 + Struts2.5 + Spring4.3 + Hibernate5.2 的项目前,首先需要对开发环境...
本教程将详细介绍如何使用Eclipse IDE搭建一个基于Struts2.5、Spring5.0和Hibernate5.2的整合框架,提供一个可运行的Demo实例。这个组合是Java企业级开发中常见的技术栈,它们各自负责不同的职责:Struts2作为前端...
综上所述,搭建一个基于Struts2.16、Spring2.5和Hibernate3.0的项目,需要理解每个框架的核心理念和用法,同时掌握它们之间的整合技巧,以及如何配置和管理项目中的库文件。这不仅能帮助开发者构建出结构清晰、易于...
Struts2和Spring是两个非常重要的Java Web框架,它们在企业级应用开发中广泛使用。Struts2提供了MVC(模型-视图-控制器)架构,帮助开发者更好地组织和管理Web应用程序,而Spring则是一个全面的后端框架,提供依赖...
Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们的整合通常被称为SSH整合,是构建企业级应用的一种常用技术栈。本项目是基于Eclipse集成开发环境,结合MySQL数据库实现的一个基础的增删改查功能。接...
Struts2.1.6+Spring2.5.6+Hibernate3.3.1 是一个经典的JavaEE企业级开发框架组合,通常被称为SSH框架。这个组合在过去的开发中被广泛使用,提供了MVC(Model-View-Controller)架构、依赖注入(DI)以及持久化管理的...
本程序采用struts2.0+spring2.5+hiberhate3架构开发。 主要展示技术包括:三层架构 freemarker模版 面向切面编程 邮件发送 定时任务 缓存管理 运行环境: 1 TOMCAT 5.5及以上版本. 2 JDK5.0及以上版本. 3 ...
根据提供的标题、描述以及部分内容,本文将详细解析与MYECLIPSE + STRUTS2 + SPRING4 + HIBERNATE4 + STRUCTS2S+OGNL + MYSQL_5.7.12相关的技术栈及其应用。这些技术在企业级开发中非常常见,能够帮助开发者构建高效...
本程序采用struts2.0+spring2.5+hiberhate3架构开发。 主要展示技术包括:三层架构 freemarker模版 面向切面编程 邮件发送 定时任务 缓存管理 运行环境: 1 TOMCAT 5.5及以上版本. 2 JDK5.0及以上版本. 3 ...
笔者开发时所用到的软件: apache-tomcat-7.0.25.exe eclipse-jee-indigo-SR2-win32.zip mysql-5.5.20-win32.msi navicat100_mysql_en.zip ...适合于初学Struts2+Spring+Hibernate的开发人员参考学习。
Eclipse搭建SSH(Struts2+Spring3+Hibernate3)框架项目涉及到的知识点涵盖了Java Web开发中常用的三个框架技术,即Struts2、Spring和Hibernate。这个教程旨在指导开发者如何将这三种技术整合在一起,构建一个Web...
本例主要是实现了struts2+spring3+hibernate3的 基本框架搭建的注册登录,以及用户增删改查,适于初学者学习。 包括:注册 登录功能 分页的实现 前端校验 验证码的实现 注册时有ajax 校验,登录时 后台从数据库...
这篇文档主要介绍了一个使用注解(Annotation)进行Struts2.0、Hibernate3.3和Spring2.5整合开发的教程。这种集成方式相比传统的XML配置,可以简化配置过程,提高开发效率。以下是各个框架及注解技术在教程中的应用: ...
在IT行业中,SSH(Struts2 + Spring3 + Hibernate3)是一个经典的Java Web开发框架组合,常用于构建高效、可维护的企业级应用。这个压缩包文件"SSH.zip"和"gxsoft.zip"很可能是包含了一个使用SSH框架实现的示例项目...
在IT行业中,开发Java Web应用时常常会使用到一套名为SSH2(Struts2、Spring、Hibernate)的技术栈,这是一套成熟的后端框架组合,能够有效地帮助开发者构建高效、可维护的应用程序。本教程将详细讲解如何在Eclipse...