- 浏览: 2276111 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (357)
- J2EE (49)
- JavaScript (40)
- Spring (19)
- Struts (5)
- CSS (8)
- Hibernate (16)
- Java (67)
- DWR (4)
- JSON (3)
- XFIRE (1)
- Tomcat (1)
- Ant (2)
- 设计模式 (2)
- 经典收藏 (2)
- JSP (10)
- Linux (0)
- WebLogic (11)
- myeclipse (13)
- Buffalo (4)
- 文件上传相关 (1)
- oracle (33)
- html (6)
- JSTL (3)
- SVN (2)
- GIT (1)
- 孙卫琴(Java网络编程精解) (1)
- DOM4J (2)
- Swing (1)
- AJAX (1)
- Eclipse (5)
- 日志组件 (3)
- PowerDesigner (1)
- Jquery (22)
- IT技术开发相关网址 (1)
- Nutz (1)
- 其它 (1)
- Velocity (3)
- WebService (1)
- MySql (2)
- Android (1)
- Maven (2)
- Quartz (11)
- Lucene (1)
- springsource (1)
- Junit (1)
- Activiti (0)
最新评论
-
yzlseu:
拼凑,没有营养
Activiti进阶—分配组任务 -
zhangsenhao:
非常赞!代码很清楚
SpringMVC3.0+MyIbatis3.0(分页示例) -
xiamw2000:
分页写得不对,应该是 : order by ${orderNa ...
SpringMVC3.0+MyIbatis3.0(分页示例) -
sheertewtw:
...
SpringMVC:上传与下载 -
kingtoon:
...
XSS之xssprotect
一 运行环境: XP3+Myeclipse6.6+Tomcat7
二 项目框架版本号:Struts2 version: 2.2.1.1,Spring version: 3.1,Hibernate version:3.6,在Hibernate下有个jar为:javassist-3.12.0.GA.jar,在这个示例中用的是:javassist-3.7.ga.jar,这二个在这个示例中都可以用,没问题,一般原则用新版本的
项目所用jar文件如下图
三 具体实现如下:
1 配置文件:
Web.xml
Struts2.xml文件如下:
applicationContext.xml配置文件如下:
jdbc.properties属性文件如下:
log4j.properties属性文件如下:
2 Java代码如下:
A WEB层:
BaseAction Code:
UserAction Code:
Service层:
UserService Code:
UserServiceImpl Code:
Entity层:
User Code:
DAO层:
UserDAO Code:
UserDAOImpl Code:
3 JSp代码如下:
Login.jsp
Success.jsp,fail.jsp
User.jsp
UserList.jsp
4 Oracle.sql
二 项目框架版本号:Struts2 version: 2.2.1.1,Spring version: 3.1,Hibernate version:3.6,在Hibernate下有个jar为:javassist-3.12.0.GA.jar,在这个示例中用的是:javassist-3.7.ga.jar,这二个在这个示例中都可以用,没问题,一般原则用新版本的
项目所用jar文件如下图
三 具体实现如下:
1 配置文件:
Web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <context-param> <param-name>webAppRootKey</param-name> <param-value>s2sh.root</param-value> </context-param> <context-param> <param-name> contextConfigLocation </param-name> <param-value> classpath*:applicationContext.xml </param-value> </context-param> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>/WEB-INF/classes/log4j.properties</param-value> </context-param> <context-param> <param-name>log4jRefreshInterval</param-name> <param-value>60000</param-value> </context-param> <context-param> <param-name>log4jExposeWebAppRoot</param-name> <param-value>false</param-value> </context-param> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <listener> <listener-class> org.springframework.web.util.Log4jConfigListener </listener-class> </listener> <filter> <filter-name> encodingFilter </filter-name> <filter-class> org.springframework.web.filter.CharacterEncodingFilter </filter-class> <init-param> <param-name> encoding </param-name> <param-value> UTF-8 </param-value> </init-param> </filter> <filter-mapping> <filter-name> encodingFilter </filter-name> <url-pattern> /* </url-pattern> </filter-mapping> <filter> <filter-name> openSessionInView </filter-name> <filter-class> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter </filter-class> </filter> <filter-mapping> <filter-name> openSessionInView </filter-name> <url-pattern> /* </url-pattern> </filter-mapping> <filter> <filter-name> struts2 </filter-name> <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter </filter-class> </filter> <filter-mapping> <filter-name> struts2 </filter-name> <url-pattern> /* </url-pattern> </filter-mapping> <welcome-file-list> <welcome-file> index.jsp </welcome-file> </welcome-file-list> </web-app>
Struts2.xml文件如下:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <package name="user" extends="struts-default"> <action name="userAction" class="u"> <result name="success">success.jsp</result> <result name="userList">userList.jsp</result> <result name="fail">fail.jsp</result> <result name="user">user.jsp</result> </action> </package> </struts>
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" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd"> <context:annotation-config /> <context:component-scan base-package="com.liuzd.s2sh" /> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <value>classpath:jdbc.properties</value> </property> </bean> <bean id="dataSource" destroy-method="close" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName" value="${jdbc.driverClassName}" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="packagesToScan"> <list> <value>com.liuzd.s2sh.entity</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.Oracle10gDialect </prop> <prop key="hibernate.show_sql">true</prop> <prop key="format_sql">true</prop> </props> </property> </bean> <!-- 让spring管理sessionFactory的加一种方法 ,就是不删除hibernate.cfg.xml文件; <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="configLocation"> <value>classpath:hibernate.cfg.xml</value> </property> </bean> --> <bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate"> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource"></property> </bean> <bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory" /> </bean> <aop:config> <aop:pointcut id="bussinessService" expression="execution(public * com.liuzd.s2sh.service.*.*(..))" /> <aop:advisor pointcut-ref="bussinessService" advice-ref="txAdvice" /> </aop:config> <tx:advice id="txAdvice" transaction-manager="txManager"> <tx:attributes> <tx:method name="*" /> <tx:method name="add*" propagation="REQUIRED"/> <tx:method name="del*" propagation="REQUIRED"/> <tx:method name="edit*" propagation="REQUIRED"/> </tx:attributes> </tx:advice> </beans>
jdbc.properties属性文件如下:
jdbc.driverClassName=oracle.jdbc.driver.OracleDriver jdbc.url=jdbc:oracle:thin:@127.0.0.1:1521:orcl jdbc.username=liuzd jdbc.password=liuzd
log4j.properties属性文件如下:
log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n log4j.appender.db=org.apache.log4j.FileAppender log4j.appender.db.File=${s2sh.root}/WEB-INF/logs/ssh.log log4j.appender.db.Append=true log4j.appender.db.layout=org.apache.log4j.PatternLayout log4j.appender.db.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%-5p][%c{1}] - %m%n
2 Java代码如下:
A WEB层:
BaseAction Code:
import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.apache.struts2.ServletActionContext; import org.apache.struts2.interceptor.SessionAware; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; public class BaseAction extends ActionSupport implements SessionAware{ private static final long serialVersionUID = 1L; public void setSession(Map<String, Object> sessionMap) { } protected Map<String,Object> getSession(){ return (Map<String,Object>)ActionContext.getContext().getSession(); } protected HttpServletRequest getRequest(){ return ServletActionContext.getRequest (); } }
UserAction Code:
import java.util.List; import javax.annotation.Resource; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Component; import com.liuzd.s2sh.entity.User; import com.liuzd.s2sh.service.UserService; @Component("u") @Scope("prototype") public class UserAction extends BaseAction { private static final long serialVersionUID = 1L; private UserService userService = null; private String message = null; private User user = null; private String action = null; public String getAction() { return action; } public void setAction(String action) { this.action = action; } public User getUser() { return user; } public void setUser(User user) { this.user = user; } @Override public String execute() throws Exception { System.out.println("user: "+user); User dbUser = this.userService.checkUserExits(user); if (null != dbUser) { message = "用户: " + user.getUsername() + "登录成功"; System.out.println(message); getSession().put("sessionUser",dbUser); return userList(); } message = "用户: " + user.getUsername() + "登录失败"; return "fail"; } public String loadUser(){ action = "update"; message = "编辑用户信息"; User loadUser = new User(); loadUser.setId(user.getId()); user = this.userService.getUserByUid(loadUser); this.getRequest().setAttribute("myname","天涯海角"); this.getSession().put("mysex", "男"); System.out.println("loaduser: "+user); return "user"; } public String addUser(){ action = "add"; return "user"; } public String saveUser(){ this.userService.addUser(user); return "user"; } public String delUser(){ action = "del"; this.userService.delUser(user); return userList(); } public String editUser(){ System.out.println("action: "+action+",编辑用户: "+user); if("update".equals(action)){ this.userService.editUser(user); }else if("add".equals(action)){ saveUser(); } return userList(); } public String userList(){ List<User> userList = this.userService.getUserList(); System.out.println("usersize: "+userList.size() + ",user: " + userList.get(0)); getRequest().setAttribute("userList", userList); return "userList"; } public UserService getUserService() { return userService; } @Resource public void setUserService(UserService userService) { this.userService = userService; } public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } }
Service层:
UserService Code:
import java.util.List; import com.liuzd.s2sh.entity.User; public interface UserService { public User checkUserExits(User user) throws Exception; public void addUser(User user); public void editUser(User user); public void delUser(User user); public List<User> getUserList(); public User getUserByUid(User user); }
UserServiceImpl Code:
import java.util.List; import javax.annotation.Resource; import org.springframework.stereotype.Component; import com.liuzd.s2sh.dao.UserDAO; import com.liuzd.s2sh.entity.User; import com.liuzd.s2sh.service.UserService; @Component("userService") public class UserServiceImpl implements UserService { private UserDAO userDao = null; public UserDAO getUserDao() { return userDao; } @Resource public void setUserDao(UserDAO userDao) { this.userDao = userDao; } public User checkUserExits(User user) throws Exception { return this.userDao.getUserByUserIdAndUserNameExits(user); } @Override public void delUser(User user) { this.userDao.delUser(user); } @Override public User getUserByUid(User user) { return this.userDao.getUser(user); } @Override public List<User> getUserList() { return this.userDao.finUserAll(); } @Override public void addUser(User user) { String id =String.valueOf(new java.util.Random().nextInt(100)); //user.setId(id); System.out.println("添加: "+user); this.userDao.saveUser(user); } @Override public void editUser(User user) { this.userDao.updateUser(user); } }
Entity层:
User Code:
@Entity @Table(name="users") public class User { private String id = null; private String username = null; private String password = null; private String address = null; private String sex = null; private Integer age = null; public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } /* * 适合ID为int,short,long的情况 * @Id @GeneratedValue(strategy=GenerationType.SEQUENCE,generator="SEQ_USER") @SequenceGenerator(name="SEQ_USER",sequenceName="S_USER",allocationSize=1) */ @Id @GeneratedValue(generator="system-uuid") @GenericGenerator(name="system-uuid", strategy = "uuid") public String getId() { return id; } public void setId(String id) { this.id = id; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } @Override public String toString() { return "name: " + username + ",password: " + password+",sex: " + sex + ",age: " + age+",address: " + address + ",id: " + id; } }
DAO层:
UserDAO Code:
import java.util.List; import com.liuzd.s2sh.entity.User; public interface UserDAO { /** * 检查用户是否存在 * */ public User getUserByUserIdAndUserNameExits(User user); public void saveUser(User user); public void updateUser(User user); public User getUser(User user); public void delUser(User user); public List<User> finUserAll(); }
UserDAOImpl Code:
import java.util.List; import javax.annotation.Resource; import org.springframework.orm.hibernate3.HibernateTemplate; import org.springframework.stereotype.Component; import com.liuzd.s2sh.dao.UserDAO; import com.liuzd.s2sh.entity.User; @Component("userDao") public class UserDAOImpl implements UserDAO { private HibernateTemplate hibernateTemplate; public HibernateTemplate getHibernateTemplate() { return hibernateTemplate; } @Resource public void setHibernateTemplate(HibernateTemplate hibernateTemplate) { this.hibernateTemplate = hibernateTemplate; } public User getUserByUserIdAndUserNameExits(User user) { List<User> users = hibernateTemplate.find("from User u where u.username = '" + user.getUsername() + "' and u.password='"+user.getPassword()+"'"); if (users != null && users.size() > 0) { return users.get(0); } return null; } @Override public void saveUser(User user) { this.hibernateTemplate.save(user); } @Override public void delUser(User user) { User delUser = getUser(user); this.hibernateTemplate.delete(delUser); } @Override public List<User> finUserAll() { return this.hibernateTemplate.find("from User"); } @Override public User getUser(User user) { return this.hibernateTemplate.load(User.class,user.getId()); } @Override public void updateUser(User user) { this.hibernateTemplate.update(user); } }
3 JSp代码如下:
Login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags" %> <html> <head> <title>Sign On</title> </head> <body> <s:form action="userAction"> <s:textfield key="user.username"/> <s:password key="user.password" /> <s:submit/> </s:form> </body> </html>
Success.jsp,fail.jsp
<%@ page contentType="text/html; charset=UTF-8" %> <%@ taglib prefix="s" uri="/struts-tags" %> <html> <head> </head> <body> <s:property value="message"/><br> <a href="${pageContext.request.contextPath}">返回</a> <s:debug></s:debug> </body> </html>
User.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags" %> <html> <head> <title>用户信息</title> </head> <body> <s:form action="userAction!editUser.action"> <input type="hidden" name="action" value='<s:property value="action"/>'/> <s:property value="message"/><br> <s:if test="user.id != null"> <s:property value="user.id"/>,<s:property value="user.username"/>, <s:property value="user.age"/>,<s:property value="user.sex"/>, <s:property value="user.address"/>,<s:property value="user.password"/>, <s:property value="#request.myname"/>,<s:property value="#session.mysex"/> </s:if> <br> <table> <tr> <td> <s:hidden name="user.id"/> <s:textfield label="姓名" name="user.username"/> </td> </tr> <tr> <td> <s:textfield label="年龄" name="user.age"/> </td> </tr> <tr> <td> <s:select label="性别" name="user.sex" list="#{ 1:'男', 2: '女', 3: '未知'}" listKey="key" listValue="value" ></s:select> </td> </tr> <tr> <td> <s:textfield label="密码" name="user.password" size="50"/> </td> </tr> <tr> <td> <s:textfield label="地址" name="user.address"/> </td> </tr> <tr> <td align="right"> <s:submit vlaue="保存"/> </td> </tr> </table> </s:form> <br> <s:debug></s:debug> <br> <a href="${pageContext.request.contextPath}">返回主页</a><br> <s:a href="userAction!userList.action">返回显示</s:a> </body> </html>
UserList.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags" %> <%@ taglib uri="/WEB-INF/c.tld" prefix="c"%> <html> <head> <title>用户集合</title> </head> <body> <table width="50%" border="1" cellpadding="1" align="center"> <thead> <tr> <th>姓名</th> <th>年龄</th> <th>性别</th> <th>地址</th> <th>操作</th> </tr> </thead> <tbody> <!-- <s:iterator value="#request.userList" status="status" > <tr align="center"> <td><s:property value="username"/></td> <td><s:property value="age"/></td> <td><s:property value="sex"/></td> <td><s:property value="address"/></td> <td> <s:a href="userAction!addUser.action">添加</s:a> | <s:a href="userAction!loadUser.action?user.id=%{id}">编辑</s:a> | <a href="<s:url action="userAction!delUser.action"><s:param name="user.id" value="id"/></s:url>">删除</a> </td> </tr> </s:iterator> --> <c:forEach items="${requestScope.userList}" var="user"> <tr align="center"> <td>${user.username}</td> <td>${user.age}</td> <td>${user.sex eq 1 ? "男" : user.sex eq 2 ? "女" : "未知"}</td> <td>${user.address}</td> <td> <a href="${pageContext.request.contextPath}/userAction!addUser.action">添加</a> | <a href="${pageContext.request.contextPath}/userAction!loadUser.action?user.id=${user.id}">编辑</a> | <a href="${pageContext.request.contextPath}/userAction!delUser.action?user.id=${user.id}">删除</a> </td> </tr> </c:forEach> </tbody> </table> <br> <a href="${pageContext.request.contextPath}">返回</a> <br> </body> </html>
4 Oracle.sql
create table USERS ( id VARCHAR2(50) not null, username VARCHAR2(50), age NUMBER, sex VARCHAR2(1), address VARCHAR2(200), password VARCHAR2(20) ); alter table USERS add constraint PKUID primary key (ID); insert into USERS (ID, USERNAME, AGE, SEX, ADDRESS, PASSWORD, ROWID) values ('001', 'spring', 25, '1', '成都市', 'spring', ''); commit;
- S2SH整合-doc.zip (95.4 KB)
- 下载次数: 1513
- S2SH-code.rar (33.1 KB)
- 下载次数: 1459
- s2sh-lib-01.zip (9.8 MB)
- 下载次数: 1856
- s2sh-lib-02.zip (5.1 MB)
- 下载次数: 1569
评论
15 楼
chouhom
2014-02-05
给开始学s2sh框架的同学,是个不错的参考代码。
14 楼
taoen
2013-06-25
struts和spring没有整合啊,只整合了hibernate和spring
13 楼
andymu1117
2012-10-21
高人。支持
12 楼
liuzidong
2012-08-14
方便我你他! 现在网络开放的时代!我也很感谢在网络上发表文章的人,也让我学了很多!彼此吧!
11 楼
hfutzhu
2012-08-09
向楼主致敬,好人啊
10 楼
hfutzhu
2012-08-09
辛苦兄弟了
9 楼
hesai_vip
2012-07-07
向楼主致敬!!
8 楼
zc888168
2012-06-29
楼主辛苦了!!!!!! 给力哥
7 楼
wuyong060577
2012-06-17
谢谢分享,非常不错。
6 楼
baiwenlong
2012-05-10
这个肯定要攒个
5 楼
CoderDream
2012-02-22
这个要支持,感谢分享!
4 楼
waterenjoy
2011-10-31
相当不错啊,很难找到这么好的资源。
3 楼
cracet
2011-06-15
相当不错,好久不搭都忘记得差不多,楼主辛苦了!
2 楼
gbj_2008
2011-06-14
楼主相当的给力,下来回去要好study一下
1 楼
birdlily
2011-03-19
刚刚正好在查找有关此文面的资料,好,相当给力,谢谢分享,已经下载了,回去慢慢研究测试下
发表评论
-
Spring Task Schedule
2017-06-24 08:46 747链接:http://docs.spring.io/spring ... -
Spring之JDBC模板(手写)
2011-10-24 14:44 4287一 模板父类: SpringBaseDAO.java im ... -
Sprint之java.util.Time
2011-07-06 16:17 1656参考资料 1 在Spring中使用JDK Timer进行任务调 ... -
java.util.Time结合Spring发送Email
2011-07-06 15:02 1972参考资料 1 Web项目下应用Java Timer定时器 ht ... -
Spring之Email<封装了常用的四种发送Email的方法(TEXT,HTML,IMG,FILE)>
2011-07-05 11:47 29702参考资料 1 Spring邮件发送(可带附件,模板,群发,异 ... -
SpringMVC:生成Excel和PDF
2011-06-07 17:18 25348参考资料 1 用spring MVC 生成Excel和PDF ... -
SpringMVC:整合JQUERY与JSON
2011-06-03 10:45 67741参考资料 1 Spring3 MVC 笔记(二) —json+ ... -
Spring:ContextLoaderListener作用
2011-06-02 10:18 32830参考资料 1 Spring之ContextLoaderList ... -
SpringMVC+JDBC:分页示例
2011-06-01 17:22 22020一 环境:XP3+Oracle10g+MyEclipse6+( ... -
SpringMVC:上传与下载
2011-06-01 16:46 27221参照了网上相关代码 注意事项: 1 springmvc.xm ... -
Spring配置JNDI(WebLogic92)NameNotFoundException: Unable to resolve解决
2011-03-15 16:01 22190请参见: Struts2.2+Spring3.1+Hiber ... -
Spring配置JNDI(Tomcat7)
2011-03-15 13:02 12065请参见: Struts2.2+Spring3.1+Hibern ... -
spring整合hibernate关于 session的管理<三种方式>
2011-02-23 13:22 2401转载:spring整合hibernate关于 session的 ... -
Spring3 MVC Annotaction入门(登录示例)
2011-01-29 16:43 18868浏览资料 1 SpringMVC入门实例及详细讲解 http: ... -
Spring MVC入门(登录示例)
2011-01-26 10:09 17161一 环境: Myeclipse6.6+JDK1.5+Tomca ... -
spring3.0.5启动报错:org.springframework.beans.factory.BeanDefinitionStoreException
2011-01-24 16:33 42341一 开发环境:JDK5+Spring3.0.5+Myeclip ... -
转载:Spring(一)为什么要使用spring
2010-07-30 09:28 1287转载: Spring(一)为什么要使用spring http: ... -
spring的jar包详解
2009-09-19 11:05 1409转载:http://www.blogjava.net/li ...
相关推荐
Struts2.2+Hibernate3.3+Spring2.5.6整合 一个简单的CRUD案例
希望此套框架整合对深入了解和学校Struts2+Spring4+Hibernate4三大框架整合技术有帮助
使用最新的SSH框架,完整的SSH实现的CRUD,架包使用工具导入,我使用的是MyEclipse8.0,学习SSH的必需经历的步骤!!
在本文中,笔者将Struts2.0.6、Spring2.0.6和Hibernate3.1进行整合,希望通过这样的整合示例,让读者了解这些框架各自的特点,以便于在自己的项目中,根据实际情况,尽快的过渡到Struts2的时代。本文的内容基于...
Hibernate+Spring+Struts2+ExtJS开发CRUD功能Hibernate+Spring+Struts2+ExtJS开发CRUD功能Hibernate+Spring+Struts2+ExtJS开发CRUD功能Hibernate+Spring+Struts2+ExtJS开发CRUD功能Hibernate+Spring+Struts2+ExtJS...
Struts2+Spring+Hibernate+ExtJS开发CRUD功能
1.使用struts2+spring3+hibernate3整合实现用户CRUD功能。 2.使用多种配置方式 A.将hibernate从外部导入,使用MySQL作为数据库。 B.将hibernate实体映射集成到spring配置文件中。 3.使用传统的配置文件集成...
Struts2.2+Spring3.1+Hibernate3.6整合(登录示例及CRUD操作) 所需的jar包
自己研究了一个多星期了,咨询了好多高手,也看了好几个视频,终于做成了S2SH的整合。我的平台是:MyEclipse6.0、Sql Server 2000、...给一些还像我一样处在学习struts2+spring+hibernate整合阶段的朋友做下参考。
利用ext3+struts2+hibernate+spring的CRUD+分页这四个框架实现crud,详细说明grid的用法,
前段时间自己研究了下SpringMVC,发现资源很少。经过自己的努力,整合了一套出来。
用EXT+struts2+spring+hibernate做的一个增删改查实例,主要用到了EXTjs里面的部分组件,用JSON与服务端交互,实现一个增删改查的功能!本地MYsql数据库,sql文件在根目录下面,建好库既可以运行!当然,还是需要在...
Struts2+Spring+Hibernate的一个小Demo ,实现CRUD
现在就将笔者使用Myeclipse工具应用struts2 + spring2 + hibernate...在本文中,笔者将Struts2.0.6、Spring2.0.6和Hibernate3.1进行整合,希望通过这样的整合示例,让读者了解这些框架各自的特点,以便于在自己的项目中
Hibernate+Spring+Struts2+ExtJS开发CRUD功能.docHibernate+Spring+Struts2+ExtJS开发CRUD功能.docHibernate+Spring+Struts2+ExtJS开发CRUD功能.docHibernate+Spring+Struts2+ExtJS开发CRUD功能.doc
前段时间时间当我在学习SSH框架技术的时候,在网上很难找到关于SSH的完整例子,比如最基本的CRUD操作和用的比较多的查询分页技术。为了让SSH初学者更清楚全面的学习,不再像我初学时候迷失方向。特花了2天时间做一个...
本文是开发基于spring的web应用的入门文章,前端采用Struts MVC框架,中间层采用spring,后台采用Hibernate。 本文包含以下内容: •配置Hibernate和事务 •装载Spring的applicationContext.xml文件 •...
SpringMVC+Spring+Hibernate+Oracle 实现图书管理(CRUD) 一个简单的图书管理系统。