- 浏览: 410843 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (347)
- java基础 (58)
- ajax (10)
- s2sh (10)
- 版本控制 (4)
- 数据库 (34)
- 服务器 (4)
- 开发工具 (8)
- javascript (15)
- soockte (5)
- ext (2)
- 环境搭建 (7)
- struts2 (9)
- 找工作中的面试技巧 (2)
- 承接网站零活 (0)
- JNI+JONSE+OGNL (8)
- 性能优化 (4)
- Android开发 (5)
- xul (8)
- jquery (2)
- 线程 (3)
- jsp+jdbc (7)
- servlet (2)
- java对xml操作 (1)
- IO流的操作 (10)
- 项目开发前配置 (1)
- css (0)
- 上传、下载 (2)
- 知识探讨 (2)
- html (2)
- HQL (0)
- 工作技巧 (1)
- IT (1)
- Hibernate杂谈 (10)
- Spring杂谈 (35)
- DWR (5)
- JUnit测试 (3)
- EasyMock测试web (1)
- ibatis (6)
- maysql (5)
- C++ (0)
- 正则表达式(解剖) (1)
- 密码安全 (2)
- 上传 (1)
- socket (1)
- jni(java与c++结合) (1)
- jdk版本问题 (0)
- tomcat版本问题 (5)
- linux基本命令(初学) (7)
- linux项目发布 (1)
- 3年的经验总结 (1)
- 加解密 (2)
- 高级java阶段 (2)
- java内存分区 (1)
- 浏览器 (1)
- 职业规划 (1)
- 管理 (5)
- java语音 (1)
- SSH (1)
- jsp (3)
- extjs (1)
- uml (2)
- 加密 (1)
- web (2)
- Ant (1)
- 自述 (1)
- Linux (1)
- ssh源码解剖 (1)
- 代码优化 (1)
- 设计模式 (0)
- xml (2)
- JOSN (1)
- scala (0)
- hadoop (0)
- spark (0)
- hana (1)
- shior (1)
- java Word (6)
- java PDF (4)
- java Excel (0)
最新评论
-
高级java工程师:
ztao2333 写道谢谢。收藏下这个总结。呵呵
温习jdk和tomcat -
ztao2333:
大写的,不是大学的
温习jdk和tomcat -
ztao2333:
谢谢。收藏下这个总结。
温习jdk和tomcat -
the_small_base_:
你好,可以提供调用方法吗?需要的Jar,能发下源码吗?谢谢
java实现语音 -
高级java工程师:
<div class="quote_title ...
s2sh整合
最近的struts2-hibernate -spring整合开发
1.简单讲解spring和struts2整合
首先导入struts的jar,hibernate的jar,spring的jar,数据库的驱动包XX.jar放入lib包中。
接下来编写实体类
User.java
将User.xml放在同一包下,模版与数据库映射。
提供hibernate配置文件
hibernate.cfg.xml
在spring中,本身没有提供ORM的实现,但是提供了一些帮助类他们会提供ORM工具的支持,例如Hibernate、Ojdbc、iBatis等。
注意:bean的id 可以随便写,sessionfactory依赖数据源,所以要注射进来bean id=“”,接下来<property name="driverClassName">要设置成数据源,
工厂:
还有一个,mvc三层架构,dao实现类注入,Servce业务逻辑注入,action注入
简单的用户登录填写:
注意,url请求找web.xml,通过拦截器和监听器进行操作,然后寻找struts.xml,然后struts class=“”会告诉继续找spring,spring的class=“”,会告诉具体找那个struts的action类,找到之后 获取rquest 参数,然后调用业务逻辑,把记过放进作用于,返回。在这里,我采用action注入servce,action注入user对象,servce类中注入dao,dao类中注入hibernateTemplate。
2.可以使用spring中的HibernateDaoSupport和HibernateTemplate类简化HibernateDao的实现类的编写。
注意:因为dao继承HibernateDaoSupper 所以要重写delete(),然后获取hibernateTemplate,HibernateTemplate封装了session的操作,user =(User)template.get(User.class,id);查找User对象,查找后在通过template在把这个对象删除掉。现在不用管session,因为我们用到spring,我们注射进来了,所以session关闭交给spring。
3.修改web.xml文件
注意:url请求过来首先找web.xml,通过过滤器进行拦截,找对应的action。
4.接着编写web.xml
注意:监听器是spring,其实就是struts不管事务了,交给spring进行管理,对象交给spring进行管理。
5.web.xml架构
编写struts.xml文件
注意name可以随便写,真正的寻找action类交给了spring,所以class=“”是spring的id=“”。他会继续到spring中找。
applicationContext.xml
注意:spring的id一定是struts的class =“”,然后spring的class=“”会告诉这个action类在哪里?jurisdiction 另外<property name="userService" ref="userService" />说名action要调业务逻辑,所以要注入业务逻辑类。
action编写:
dao接口编写
dao接口实现类
编写servce接口
编写servce实现类
编写jsp名为login.jsp
失败页面 error.jsp
注意:如果有什么需要帮助的可以加我QQ503229799 备注:s2sh寻求帮助,我会同意添加好友,另外我有QQ开发群,看我的首页,在群里喊我也行!这只是简单的登录,如果想要整个模块的增删改查的代码,请在本片评价上留言!我会给你们整合一个完整的代码,包括jar包上传····数据库设计····另外加注释·····
接下来咱们开始演示吧~~~~
url输入地址:http://localhost:8088/s2sh/login.jsp
最近比较忙,很久没弄博客了,刚看到
已给你发到你邮箱
1.简单讲解spring和struts2整合
首先导入struts的jar,hibernate的jar,spring的jar,数据库的驱动包XX.jar放入lib包中。
接下来编写实体类
User.java
package com.s2sh.mobel; import java.io.Serializable; public class User implements Serializable{ private static final long serialVersionUID = -2974230401163436730L; private Integer id; private String name; private String password; private String firstname; private String lastname; private Integer age; private User(){} private User(Integer id , String firstname , String lastname , Integer age,String name,String password){ this.id = id; this.firstname = firstname; this.lastname = lastname; this.age = age; this.name=name; this.password=password; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getFirstname() { return firstname; } public void setFirstname(String firstname) { this.firstname = firstname; } public String getLastname() { return lastname; } public void setLastname(String lastname) { this.lastname = lastname; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public void setPassword(String password) { this.password = password; } public String getPassword() { return password; } public void setName(String name) { this.name = name; } public String getName() { return name; } }
将User.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.s2sh.mobel.User" table="users"> <id name="id" column="id" type="integer"> <generator class="native"></generator> </id> <property name="name" column="name" type="string"/> <property name="password" column="password" type="string"/> <property name="firstname" column="firstname" type="string" not-null="false"/> <property name="lastname" column="lastname" type="string" not-null="false"/> <property name="age" column="age" type="integer" not-null="false"/> </class> </hibernate-mapping>
提供hibernate配置文件
hibernate.cfg.xml
<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <!-- Generated by MyEclipse Hibernate Tools. --> <hibernate-configuration> <session-factory> </session-factory> </hibernate-configuration>
在spring中,本身没有提供ORM的实现,但是提供了一些帮助类他们会提供ORM工具的支持,例如Hibernate、Ojdbc、iBatis等。
<?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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <!-- 数据源配置 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName"> <value>com.mysql.jdbc.Driver</value> </property> <property name="url"> <value>jdbc:mysql://localhost:3306/s2sh</value> </property> <property name="username"> <value>root</value> </property> <property name="password"> <value>wj</value> </property> </bean>
注意:bean的id 可以随便写,sessionfactory依赖数据源,所以要注射进来bean id=“”,接下来<property name="driverClassName">要设置成数据源,
工厂:
<!-- sessionFactory --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref local="dataSource"/> </property> <property name="mappingResources"> <list> <value>com/s2sh/mobel/User.hbm.xml</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </prop> <prop key="hibernate.show_sql"> true </prop> </props> </property> </bean>
还有一个,mvc三层架构,dao实现类注入,Servce业务逻辑注入,action注入
<!--实现层 --> <bean id="userDao" class="com.s2sh.dao.impl.UserDaoImpl" scope="singleton"> <property name="sessionFactory"> <ref bean="sessionFactory"/> </property> </bean> <!--service层 --> <bean id="userService" class="com.s2sh.service.impl.UserServiceImpl"> <property name="userDao" ref="userDao"/> </bean> <!-- action --> <bean id="saveUserAction" class="com.s2sh.action.user.UserAction" scope="prototype"> <property name="userService" ref="userService" /> </bean>
简单的用户登录填写:
<!-- login --> <bean id="loginUserAction" class="com.s2sh.action.user.UserAction" scope="prototype"> <property name="userService" ref="userService" /> </bean>
注意,url请求找web.xml,通过拦截器和监听器进行操作,然后寻找struts.xml,然后struts class=“”会告诉继续找spring,spring的class=“”,会告诉具体找那个struts的action类,找到之后 获取rquest 参数,然后调用业务逻辑,把记过放进作用于,返回。在这里,我采用action注入servce,action注入user对象,servce类中注入dao,dao类中注入hibernateTemplate。
2.可以使用spring中的HibernateDaoSupport和HibernateTemplate类简化HibernateDao的实现类的编写。
public void delete(User id){ //获得hibernate事务 template =getHiberanteTemplate(); //获得对象 user =(User)template.get(User.class,id); //spring事务会进行操作删除对象 template.delete(user); }
注意:因为dao继承HibernateDaoSupper 所以要重写delete(),然后获取hibernateTemplate,HibernateTemplate封装了session的操作,user =(User)template.get(User.class,id);查找User对象,查找后在通过template在把这个对象删除掉。现在不用管session,因为我们用到spring,我们注射进来了,所以session关闭交给spring。
3.修改web.xml文件
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <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>
注意:url请求过来首先找web.xml,通过过滤器进行拦截,找对应的action。
4.接着编写web.xml
<!--监听器--> </filter-mapping> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> </web-app>
注意:监听器是spring,其实就是struts不管事务了,交给spring进行管理,对象交给spring进行管理。
5.web.xml架构
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <!--过滤器--> <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> <!--监听器--> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> </web-app>
编写struts.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="s2sh" namespace="/" extends="struts-default" > <!-- login 用户登录--> <action name="loginUser" class="loginUserAction" method="login"> <result name="success">/list.jsp</result> <result name="error">/error.jsp</result> </action> </struts>
注意name可以随便写,真正的寻找action类交给了spring,所以class=“”是spring的id=“”。他会继续到spring中找。
applicationContext.xml
<bean id="loginUserAction" class="com.s2sh.action.user.UserAction" scope="prototype"> <property name="userService" ref="userService" /> </bean>
注意:spring的id一定是struts的class =“”,然后spring的class=“”会告诉这个action类在哪里?jurisdiction 另外<property name="userService" ref="userService" />说名action要调业务逻辑,所以要注入业务逻辑类。
action编写:
package com.s2sh.action.user; import java.util.Map; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; import com.s2sh.mobel.User; import com.s2sh.service.UserService; public class UserAction extends ActionSupport { private static final long serialVersionUID = -7467352669343037994L; private User user; private UserService userService; public static long getSerialversionuid() { return serialVersionUID; } public UserService getUserService() { return userService; } private String name; private String password; public void setUserService(UserService userService) { this.userService = userService; } public User getUser() { return user; } public void setName(String name) { this.name = name; } public String getName() { return name; } public void setPassword(String password) { this.password = password; } public String getPassword() { return password; } public void setUser(User user) { this.user = user; } public String login()throws Exception{ System.out.println(user.getName()); if(null!=this.userService.findUser(user)){ return SUCCESS; }else { return ERROR; } }
dao接口编写
package com.s2sh.dao; import java.util.List; import com.s2sh.mobel.User; public interface UserDao { //根据用户用户来登录,不过你可以根据自己需求来写 public User findUser(User user); }
dao接口实现类
package com.s2sh.dao.impl; import java.util.List; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import com.s2sh.dao.UserDao; import com.s2sh.mobel.User; public class UserDaoImpl extends HibernateDaoSupport implements UserDao{ //用户登录 public User findUser(User user) { try{ String hql="from User where name=? and password=?"; List list = (List) this.getHibernateTemplate().find(hql,new String[]{user.getName(),user.getPassword()}); if(list.size()>=1){ return (User)list.get(0); }else { return null; } }catch (Exception e) { e.printStackTrace(); } return null; } }
编写servce接口
package com.s2sh.service; import java.util.List; import com.s2sh.mobel.User; public interface UserService { //根据user登录 public User findUser(User user); }
编写servce实现类
package com.s2sh.service.impl; import java.util.List; import com.s2sh.dao.UserDao; import com.s2sh.mobel.User; import com.s2sh.service.UserService; public class UserServiceImpl implements UserService{ private UserDao userDao; //注入 public void setUserDao(UserDao userDao) { this.userDao = userDao; } //用户登录 public User findUser(User user){ return (User)this.userDao.findUser(user); } }
编写jsp名为login.jsp
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <%@ taglib uri="/struts-tags" prefix="s" %> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>用户登录</title> </head> <script type=text/javascript></script> <script> function longin(){ var name = document.getElementById("UserName").value; var password = document.getElementById("UserPassword").value; if(name.length==""){ alert("用户名不能为空"); return false; }else if(password.length<6){ alert("密码长度不能小于6位"); return false; }else if(password.length>6){ alert("密码长度不能大于6位"); } return login.submit(); } </script> <body> <!-- <s:form action="loginUser" method="post"> <s:textfield name="user.name" label="name" id="username"></s:textfield> <s:textfield name="user.password" label="password" id="UserPassword"></s:textfield> <s:submit value="登录"/> </s:form> --> <form action="loginUser" name="login" method="post"> 用户名: <input type="text" name="user.name" id="UserName"/> <br/> 密码: <input type="password" name="user.password" id="UserPassword"/> <br/> <input type="button" value="登录" onclick="longin()"/> </form> </body> </html>
失败页面 error.jsp
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <%@ taglib uri="/struts-tags" prefix="s" %> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Insert title here</title> </head> <body> ------------------>程序失败<-------------------------------- </body> </html>
注意:如果有什么需要帮助的可以加我QQ503229799 备注:s2sh寻求帮助,我会同意添加好友,另外我有QQ开发群,看我的首页,在群里喊我也行!这只是简单的登录,如果想要整个模块的增删改查的代码,请在本片评价上留言!我会给你们整合一个完整的代码,包括jar包上传····数据库设计····另外加注释·····
接下来咱们开始演示吧~~~~
url输入地址:http://localhost:8088/s2sh/login.jsp
评论
6 楼
高级java工程师
2015-05-25
文思涌动 写道
楼主新年好。可否再传一遍给我,我没有收到, 不清楚您的邮箱地址是哪个。
最近比较忙,很久没弄博客了,刚看到
5 楼
文思涌动
2015-02-19
楼主新年好。可否再传一遍给我,我没有收到, 不清楚您的邮箱地址是哪个。
4 楼
高级java工程师
2014-02-26
文思涌动 写道
楼主传我一个w.ang-chao08@163.com
已给你发到你邮箱
3 楼
文思涌动
2014-02-25
楼主传我一个w.ang-chao08@163.com
2 楼
EyeJava6688
2012-08-31
非常不错的例子,希望大家多多关注。
1 楼
DYF123CXL123
2012-05-30
版主给一个增删改查的全代码!邮箱zzu_dyf@163.com 谢谢!
发表评论
-
springboot 如何扫描程序中带有指定注解的类和方法
2019-07-23 10:55 3241使用springboot的人基本都知道swagger,那么sw ... -
【第七章】 对JDBC的支持 之 7.5 集成Spring JDBC及最佳实践 ——跟我学spring3
2015-09-28 14:58 6637.5 集成Spring JDBC及最佳实践 ... -
【第七章】 对JDBC的支持 之 7.4 Spring提供的其它帮助 ——跟我学spring3【私塾在线原创】
2015-09-28 14:57 6457.4 Spring提供的其它帮助 7.4 ... -
【第七章】 对JDBC的支持 之 7.3 关系数据库操作对象化 ——跟我学spring3
2015-09-28 14:56 5187.3.1 概述 所谓关系数据 ... -
对JDBC的支持 之 7.2 JDBC模板类 ——跟我学spring3
2015-09-28 14:54 6437.2 JDBC模板类 7.2.1 概述 ... -
【第七章】 对JDBC的支持 之 7.1 概述 ——跟我学spring3
2015-09-28 14:53 4707.1 概述 7.1.1 JDBC回顾 ... -
SpringMVC3强大的请求映射规则详解 第六章 注解式控制器详解——跟着我学SpringMVC
2015-07-21 09:40 503声明:本系列都是原创内容,觉得好就顶一个,让更多人知 ... -
SpringMVC3强大的请求映射规则详解 第六章 注解式控制器详解——跟着我学SpringMVC
2015-07-21 09:38 602声明:本系列都是原创内容,觉得好就顶一个,让更多人知道!!写 ... -
【第五章】Spring表达式语言 之 5.4在Bean定义中使用EL—跟我学spring3
2015-05-25 15:36 3785.4.1 xml风格的配置 ... -
【第五章】Spring表达式语言 之 5.3 SpEL语法 ——跟我学spring3
2015-05-25 15:35 5515.3 SpEL语法 5.3.1 基本表达 ... -
【第五章】Spring表达式语言 之 5.1 概述 5.2 SpEL基础 ——跟我学spring3
2015-05-25 15:33 6685.1 概述 5.1.1 ... -
【第四章】 资源 之 4.4 Resource通配符路径 ——跟我学spring3
2015-05-25 15:31 5734.4.1 使用路径通配符加载Resource ... -
【第四章】 资源 之 4.3 访问Resource ——跟我学spring3
2015-05-25 15:29 5954.3.1 ResourceLoader接口 ... -
第四章 Controller接口控制器详解(1)——跟着我学SpringMVC
2014-09-16 09:49 6994.1、Controller简介 Control ... -
第四章 Controller接口控制器详解(1)——跟着我学SpringMVC
2014-09-16 09:48 12134.1、Controller简介 Control ... -
第一章 Web MVC简介 —— 跟我学SpringMVC
2014-09-16 09:46 742Web MVC简介 1.1、Web开发中的请求-响应模型: ... -
第二章 Spring MVC入门 —— 跟我学SpringMVC
2014-09-16 09:44 14552.1、Spring Web MVC是什么 S ... -
第三章 DispatcherServlet详解 ——跟我学SpringMVC
2014-09-16 09:42 7503.1、DispatcherServlet作用 Dispa ... -
第三章 DispatcherServlet详解 ——跟小龙学SpringMVC
2014-09-16 09:36 03.1、DispatcherServlet作用 Dispa ... -
Hibernate配置详解
2014-05-08 15:53 687Hibernate配置文件详解 修改完环境变量之后 ...
相关推荐
S2SH整合指的是Struts2、Spring和Hibernate这三个开源框架的集成应用,它们分别是MVC(Model-View-Controller)架构中的控制层、业务层和数据持久层的优秀解决方案。在Java Web开发中,S2SH整合能提供一个强大、灵活...
**S2sh整合所需jar包大全** 在Java Web开发领域,Struts 2、Spring 和 Hibernate(简称S2SH)是一种常见的集成框架,用于构建高效、可维护的企业级应用程序。这个压缩包“s2sh整合所需jar包大全”提供了一整套支持...
**S2SH整合详解** S2SH,全称为Struts2、Spring和Hibernate的整合,是Java Web开发中一种常见的框架组合,用于构建高效、可维护的Web应用程序。这三个框架分别负责不同的职责:Struts2作为MVC(模型-视图-控制器)...
本压缩包"**s2sh整合详细jar**"显然是一份包含了这三个框架核心组件的集合,旨在帮助初学者快速搭建SSH整合环境。以下是对每个框架及其整合细节的详细解释: 1. **Struts2**:Struts2是一个基于MVC设计模式的Java ...
**S2SH整合详解** S2SH,全称为Spring、Struts、Hibernate的组合,是经典的Java Web开发框架。这个框架结合了Spring的依赖注入、事务管理,Struts的MVC设计模式,以及Hibernate的对象关系映射(ORM)工具,为开发者...
标题 "s2sh整合所有的jar包" 指的是将Struts、Spring和Hibernate这三种技术集成所需的Java档案(JAR)文件集合在一起,便于在项目开发中快速引用和使用。这种整合通常被称为SSH框架,它是Java Web开发中的一个流行...
【标题】"s2sh整合完全包"指的是一个包含了所有必要组件的压缩文件,用于支持基于Struts2、Spring和Hibernate(简称s2sh)的Web应用开发。这个包简化了开发过程,因为它包含了这三个框架的库文件,使得开发者无需...
在S2SH整合中,Hibernate 3.5.6版本作为ORM(对象关系映射)工具,允许开发者通过对象模型来操作数据库,而无需编写SQL。它支持懒加载、缓存策略和复杂查询,使得数据库操作更加便捷。 **整合过程** S2SH的整合...
s2sh整合 所需其他jar包 打包下载 spring-dao.jar mysql-connector-java-5.1.6-bin.jar commons-dbcp.jar cglib-nodep.jar
这个"最新S2SH整合所需jar包"是开发者为了方便快速搭建基于这三个框架的应用而准备的资源集合。以下是这些标签所代表的框架和它们的主要知识点: 1. **Struts2**:Struts2是一个强大的MVC(Model-View-Controller)...
这三者结合,被称为S2SH整合,能够构建出高效、灵活且可维护的Java Web应用程序。 **Struts2框架**: Struts2是Struts1的升级版,它引入了拦截器(Interceptor)的概念,增强了动作(Action)与结果(Result)的...
这个压缩包提供了实现增删改查功能的源代码,以及完整的S2SH整合包,使得开发者可以直接运行项目,无需从零开始配置环境。 **Struts2** 是一个基于MVC设计模式的Action驱动框架,它负责处理用户的请求,并通过...
【S2SH整合完美教程】 在Java Web开发中,Struts2、Spring和Hibernate的整合是常见的技术栈,被广泛用于构建MVC架构的应用程序。S2SH整合旨在实现业务逻辑与控制层、持久化层的高效协同,提高代码的可维护性和可...
【S2SH整合的学生宿舍管理系统】是一个针对Java开发者和学习者设计的项目,它结合了Struts、Spring和Hibernate三个框架,简称S2SH。这个系统不仅提供了对学生宿舍的全面管理功能,还能够帮助开发者提升自己的技能...
【s2sh整合详解】 `s2sh` 是一个常见的Web应用程序开发框架的简称,它结合了Struts、Spring和Hibernate这三个流行的开源Java框架。Struts提供了MVC(Model-View-Controller)架构,Spring提供了依赖注入(DI)和...
下面将详细讲解这个"S2SH整合_注册_登录"项目中的关键知识点。 首先,Struts2作为控制器层,负责处理HTTP请求,并将这些请求转发给相应的业务逻辑处理。在注册和登录功能中,Struts2配置文件(struts.xml)定义了...
在S2SH整合中,Hibernate负责将Java对象持久化到数据库,Spring通过HibernateTemplate或JPA接口与Hibernate进行交互,实现数据的增删改查。 整合步骤: 1. **配置Struts2**:在web.xml中配置Struts2的过滤器,设置...
【S2SH整合详解】 S2SH,全称为Struts2、Hibernate和Spring的整合,是一种常见的Java Web开发框架组合,用于构建高效、灵活的企业级应用程序。这三个组件各自扮演着不同的角色,共同构建了一个强大的MVC(Model-...
如果在描述中提到"S2SH整合lib缺数据库驱动自己视情况去下载",这意味着在进行S2SH整合时,可能缺少了对应数据库的JDBC驱动。例如,如果你的项目连接的是MySQL数据库,那么需要下载并添加`mysql-connector-java`的...
这个"S2SH整合的jar"文件可能是为了方便开发者快速搭建基于这三个框架的项目而制作的。 标题中的"S2SH整合的jar"意味着这个文件包含Struts2、Spring和Hibernate的核心库以及可能的整合配置,旨在帮助开发者避免繁琐...