- 浏览: 938729 次
- 性别:
- 来自: 重庆
文章分类
- 全部博客 (453)
- Windows phone 7 (0)
- Andriod (47)
- iPhone (1)
- Web (30)
- J2EE (34)
- stucts 2学习笔记 (34)
- 开发项目 (3)
- spring学习笔记 (24)
- EJB学习笔记 (6)
- Hibernate学习笔记 (15)
- JPA学习笔记 (8)
- Jsp (11)
- ajax (7)
- 异常收集模块 (1)
- jquery (2)
- phoneGap (2)
- jquery Mobile (0)
- java面试总结 (5)
- Object-C (0)
- javascript (6)
- Eclipse (5)
- 支付集成 (2)
- Weblogic (1)
- Dubbox (5)
- Redis (10)
- linux (21)
- Codis (2)
- React Native (0)
- Mysql (6)
- Docker (3)
- 自动化部署 (1)
- 项目Bug管理平台 (2)
- 负载均衡 (1)
- Mycat (2)
- Java基础知识 (16)
- 数据库 (7)
- Maven (17)
- Kafka (21)
- logs (2)
- 大并发 (2)
- 消息中间件 (2)
- 分布式锁 (3)
- 算法 (4)
- 数字证书原理,公钥私钥 (0)
- 数字证书原理 (1)
- 公钥私钥 (1)
- zookeeper (4)
- Hbase (9)
- Hadoop (2)
- storm (2)
- 通信协议 (1)
- Hive (3)
- git (1)
- JVM (2)
- 大数据相关算法 (1)
- idea (5)
- 将博客搬至CSDN (1)
- 设计模式 (2)
- 表达式 (1)
- 代码审查工具 (0)
- 开源项目 (1)
- PyCharm (0)
- python (6)
- Kubernetes (1)
- swagger (1)
- Maven中mirrors和repository的关系 (0)
- RabbitMQ (3)
- redisson (1)
- k8s (2)
- Mac (1)
最新评论
-
misisipi101:
假设库已经分为32个,那么要扩展到64个,怎样做呢
订单分库分表实践总结以及关键步骤 -
mfkxk298:
简单明了的例子,解决了问题,谢谢啦!
关于ListView中notifyDataSetChanged()刷新数据不更新原因 -
whbwang:
" target="_blank" ...
java web开发 高并发处理 -
suguoqian:
...
java web开发 高并发处理 -
xiangnanyujing:
Dubbox+Redis3.0+Spring+Hibernate+zookeeper实现消息推送核心搭建
开发j2ee其实最复杂的就是环境搭建和框架的整合了,在这里总结一下使比较流行的三大框架struct1.x+spring2.x+hibernate整合。这个过程非常的复杂请耐心读完,在这个过程中也实际操作一下环境的搭建。现在就开始吧!
第一步:
* 配置structs
<1、拷贝全部的struct的*.jar和jstl类库(在jsp中药使用EL表达式)jstl.jar和standard.jar
<2、修改web.xml文件配置ActionServlet如下:(例子中参考)
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<!-- Default -->
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>2</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>2</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<3、在WEB-INF下提供struts-config.xml文件 (例子中参考)如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<!-- 用做国际化 -->
<message-resources parameter="MessageResources"/>
</struts-config>
<4、提供国际化只有文件
(参考\apps\struts-blank-1.3.8\WEB-INF\src\java\)下的资源属性文件
MessageResources.properties
拷贝到src目录下(注意:这不是必须的)
第二步:
* 配置spring
<1、 拷贝spring类库
spring.jar、commons-loging.jar(覆盖低版本的)、log4j-*.jar
AOP(aspectjrt.jar、aspectjweaver.jar)
<2、提供spring配置文件
在src目录下提供applicationContext-bean.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: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-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
</beans>
<3、接下来我们需要让spring容器来管理beanFactory,这样就可以使用对象注入来解决耦合 。 配置Web.xml文件如下
<!--
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:applicationContext-*.xml,/WEB-INF/applicationContext-*.xml</param-value>
</context-param>
-->
<!-- 读取spring applicationContext-*.xml配置文件得到beanFactory对象-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:applicationContext-*.xml</param-value>
</context-param>
<!-- 负责得到beanFactory并放到serveltContext-->
<listener>
<listenerclass>org.springframework.web.context.ContextLoaderListener</ listener-class>
</listener>
此时struts1.x和spring整合完成 我们写个例子测试一下:
第一步:我们先写需要的页面*.jsp
index.jsp、login.jsp、success.jsp
index.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>spring和struct第二种集成方案</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<a href="logininput.do">登录</a><br>
<a href="login.jsp">登录</a>
</body>
</html>
login.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>登陆页面</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<!-- <%=request.getContextPath() %>/login.do -->
<!-- /SS1.x/login.do -->
<!-- login.do -->
<form action="login.do" method="post">
用户名:<input type="text" name="username"> <br>
密码:<input type="password" name="password"><br>
<input type="submit" value="提交">
</form>
</body>
</html>
success.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>登陆页面</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<!-- <%=request.getContextPath() %>/login.do -->
<!-- /SS1.x/login.do -->
<!-- login.do -->
<form action="login.do" method="post">
用户名:<input type="text" name="username"> <br>
密码:<input type="password" name="password"><br>
<input type="submit" value="提交">
</form>
</body>
</html>
第二步:struts1.x需要使用到ActionFrom 来封装数据
新建一个LogingActionForm.java
public class LogingActionForm extends ActionForm {
private String username;
private String password;
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;
}
}
第三步:需要一个Action 新建一个名LogingAction.java来做页面逻辑和导向
public class LogingAction extends Action {
//使用spring 注入bean
private UserManger userManger;
public void setUserManger(UserManger userManger) {
this.userManger = userManger;
}
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)
throws Exception {
LogingActionForm logingActionForm=(LogingActionForm)form;
userManger.Loging(logingActionForm.getUsername(), logingActionForm.getPassword());
return mapping.findForward("success");
}
}
第四步:编写业务层一般面向借口编程所以新建一个接口
public interface IUserManger {
public abstract void Loging(String username, String password);
}
第五步:业务层实现
public class UserManger implements IUserManger {
public void Loging(String username,String password)
{
//简单的打印一句话
System.out.println("loging..."+username+":"+password);
}
}
接下来因为我们要注入一个业务bean使用spring所以我们需要把这个业务类交个spring管理配置如下:
新建一个applicationContext-acton.xml(因为spring读取时候我们配置了通配符所以不用担心不会被加载文件)
<?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: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-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
<bean name="/login" class="com.liyong.actions.LogingAction"
<!--scope="prototype"指定这个bean是原型不是单例这解决了action的线程安全问题-->
scope="prototype">
<!--为userManger属性注入userManger对象因为在applicationContext-bean.xml中申明了所以直接引用-->
<property name="userManger" ref="userManager"/>
</bean>
</beans>
在接下来配置struts-config.xml文件配置Action 如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans>
<form-bean name="loginForm" type="com.liyong.forms.LogingActionForm" />
</form-beans>
<action-mappings>
<action path="/logininput" forward="/login.jsp">
</action>
<!--
由spring来创建这个action spring的一个代理类 这个代理类会去实例化beanFactory,然后再去实例化我们的Action
path="/login" 必须与 applicationContext-acton.xml中bean的name="/login" 相同这样才会去实例化这个Action
-->
<action path="/login"
type="org.springframework.web.struts.DelegatingActionProxy"
name="loginForm"
scope="request"
>
<!--formbean 默认放在seesion中 改为 scope="request" -->
<forward name="success" path="/success.jsp"/>
</action>
</action-mappings>
<!-- 用做国际化 -->
<message-resources parameter="MessageResources"/>
</struts-config>
上面就把spring+strut1.x集成完成,那么下面我们来集成hibernate步骤如下:
*配置hibernate
<1、拷贝hibernate所以得*.jar文件
<2、编写一个hibernate.cfg.xml配置文件(参考例子)在src目录下如下:
<?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>
<property name="connection.username">root</property>
<property name="connection.url">jdbc:mysql://localhost:3306/mysql</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="myeclipse.connection.profile">mysql</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.hbm2ddl.auto">update</property>
</session-factory>
</hibernate-configuration>
<3、编写一个日志属性文件log4j.properties在src目录下(参照例子)
### direct log messages to stdout ###
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
### direct messages to file hibernate.log ###
#log4j.appender.file=org.apache.log4j.FileAppender
#log4j.appender.file.File=hibernate.log
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
#log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### set log levels - for more verbose logging change 'info' to 'debug' ###
log4j.rootLogger=warn, stdout
#log4j.logger.org.hibernate=info
#log4j.logger.org.hibernate=debug
### log HQL query parser activity
#log4j.logger.org.hibernate.hql.ast.AST=debug
### log just the SQL
#log4j.logger.org.hibernate.SQL=debug
### log JDBC bind parameters ###
#log4j.logger.org.hibernate.type=info
#log4j.logger.org.hibernate.type=debug
### log schema export/update ###
#log4j.logger.org.hibernate.tool.hbm2ddl=debug
### log HQL parse trees
#log4j.logger.org.hibernate.hql=debug
### log cache activity ###
#log4j.logger.org.hibernate.cache=debug
### log transaction activity
#log4j.logger.org.hibernate.transaction=debug
### log JDBC resource acquisition
#log4j.logger.org.hibernate.jdbc=debug
### enable the following line if you want to track down connection ###
### leakages when using DriverManagerConnectionProvider ###
#log4j.logger.org.hibernate.connection.DriverManagerConnectionProvider=trace
<4、编写一个事务文件在src目录下applicationContext-common.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: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-2.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">
<!-- 配置sessionFactory -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>classpath:hibernate.cfg.xml</value>
</property>
</bean>
<!-- 配置事务管理器 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
</bean>
<!-- 配置事务的传播特性 -->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="add*" propagation="REQUIRED"/>
<tx:method name="del*" propagation="REQUIRED"/>
<tx:method name="modify*" propagation="REQUIRED"/>
<tx:method name="*" read-only="true"/>
</tx:attributes>
</tx:advice>
<!--
那些类的哪些方法参与事务 下面的expression需要修改
com.liyong.server.manager.*.*(..))
-->
<aop:config>
<aop:pointcut id="allManagerMethod" expression="execution(* com.liyong.server.manager.*.*(..))"/>
<aop:advisor pointcut-ref="allManagerMethod" advice-ref="txAdvice"/>
</aop:config>
</beans>
<5、处理中文字符在web.xml文件中配置filter
<!--
如何提交中文字符?配置web.xml了,Spring提供了专门的针对Encoding的过滤器
-->
<filter>
<filter-name>Spring character encoding filter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Spring character encoding filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<6、了避免Hibernate的懒加载异常而创建的解决方案
这是为了避免Hibernate的懒加载异常而创建的解决方案
它是一个过滤器,能够让Session在请求解释完成之后再关闭(所以才能够避免懒加载异常)
-->
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<7、检查所导入的*.jar包是否有重复的去掉低版本的jar包
.....集成成功.....
发表评论
-
轻松看懂Java字节码
2018-04-09 10:28 621计算机只认识0和1。这意味着任何语言编写的程序最终都 ... -
happens-before俗解
2018-04-09 10:03 595学习Java并发,到后面总会接触到happens-befor ... -
位与&,位或|,位异或^运算
2018-04-04 17:25 625一.按位与运算符 参加运算的两个数据,按二进制位进行位与 ... -
Java中>>、>>>、<<
2018-04-04 14:47 430定义: 右移动>>:带符号右移。正数右移高位 ... -
在Java中谈尾递归--尾递归和垃圾回收的比较
2017-08-29 17:49 460转载请注明:博客园- ... -
hotspot的垃圾回收策略,设置和调优
2017-01-11 18:48 1896我们都知道JVM内存由几个部分组成: Java栈、程序计数器 ... -
两点距离计算
2016-11-05 18:03 549public class DistanceUtil { pr ... -
protobuf对象序列化问题一
2016-06-15 21:07 2799今天在项目中遇到一个奇葩问题。问题描述:项目基于dubbo服务 ... -
Protostuff对象序列化工具
2016-06-08 09:53 1812VO.java import java.io.Serial ... -
高性能序列化、反序列化protostuff 使用
2016-06-07 16:45 30381、引用jar包: pom.xml: <!-- p ... -
Java调用bat文件和exe文件
2016-01-12 11:09 956public static void main(String ... -
Dubbox+Redis3.0+Spring+Hibernate+zookeeper实现消息推送核心搭建
2015-12-30 15:55 10542这里在开始搭建环境之前请搭建先熟悉了解Dubbox、Red ... -
网站集成ueditor+上传文件到共享盘
2015-12-10 13:47 1957这里给大家分享下载使用ueditor使用心得, ... -
java 实现微信搜索附近人功能
2015-03-25 18:07 4931最近给andorid做后台查询数据功能,有一个需求是模仿微信 ... -
重庆APP开发 重庆Android 重庆Ios 爬虫科技 重庆爬虫科技
2014-10-06 12:03 9<!--[if gte mso 9]><x ... -
JCIFS--java通过域登录实现单点登录
2014-09-04 15:38 4154JCIFS--java通过域登录实现单点登录 ... -
JPA 去除重复列数据
2013-12-30 15:31 11190//清除重复列 Session sessi ... -
使用Eclipse构建Maven的SpringMVC项目
2013-12-12 13:05 989使用Eclipse构建Maven的Spri ... -
Ehcache 整合Spring 使用页面、对象缓存
2013-12-12 13:04 1293Ehcache 整合Spring 使用页面、对象缓存 E ... -
Spring mvc整合hibernate例子
2013-12-11 13:42 1185企业级项目实战(带源码)地址: http://zz563143 ...
相关推荐
Struts2+Spring+Hibernate和Struts2+Spring+Ibatis是两种常见的Java Web应用程序集成框架,它们分别基于ORM框架Hibernate和轻量级数据访问框架Ibatis。这两种框架结合Spring,旨在提供一个强大的、可扩展的、易于...
在这个"struct2+spring+hibernate的整合的例子"中,提供的"实验一 SSH整合.doc"文档很可能是详细的步骤指南,引导读者逐步完成整合过程。而"ssh4.zip"可能包含了示例项目的源代码和配置文件,供学习者参考和实践。 ...
这个"Struct+Spring+Hibernate依赖包大全"提供了这三个框架最新版本所需的全部jar包,使得开发者能够快速搭建一个完整的SSH集成开发环境。 1. **Struts**: Struts是Apache组织开发的一个开源MVC框架,它为Web应用...
4. **整合三者**:使用Spring插件使Struts2与Spring交互,通过SessionFactory实例化Hibernate Session,实现业务逻辑。 SSH框架的整合大大简化了Java Web应用的开发流程,提高了开发效率。然而,随着技术的发展,...
总的来说,SSH整合提供了一种成熟、稳定的企业级应用开发模式,它结合了Spring的IoC和AOP特性、Hibernate的ORM能力以及Struts2的MVC设计,使得开发者能够更专注于业务逻辑,而不是底层实现细节。在实际项目中,通过...
Struts2+Spring+Hibernate+EasyUI 是一个经典的Java Web开发框架组合,广泛应用于企业级应用的构建。这个管理系统利用这些技术的特性,提供了一种高效、稳定且易于维护的解决方案。 **Struts2** 是一个强大的MVC...
- **整合Hibernate和Spring**:Spring通过其Hibernate支持模块(Spring-Data-JPA或Hibernate-ORM)管理SessionFactory和Session,为DAO层提供数据访问服务。这使得在DAO中可以使用注解配置来执行数据库操作,简化了...
通过这个实例,你可以深入了解Struts 2、Spring和Hibernate的整合使用,学习如何构建一个完整的Java Web应用,掌握MVC模式和企业级开发的最佳实践。这不仅对个人技能提升有帮助,也为将来参与大型项目开发奠定了坚实...
library_ssh2可能是一个包含系统源代码的压缩文件,"ssh2"可能表示系统使用了Struts2、Spring2和Hibernate2这三个框架的早期版本。这个文件中应包含所有必要的Java源代码、配置文件、Web应用相关的资源(如JSP页面、...
其中,Struts2、Spring与Hibernate作为经典的“SSH”组合(Struts-Spring-Hibernate),在Java Web开发领域占据着重要的地位。本文旨在通过一个简单的登录示例项目,详细介绍如何在Netbeans IDE环境下构建基于Struts...
以上就是Struts2、Spring和Hibernate整合的基本步骤。在这个过程中,需要注意的是,配置文件的正确性至关重要,包括web.xml、struts.xml、applicationContext.xml和hibernate.cfg.xml。此外,理解各个框架的核心功能...
**SSH框架整合详解** SSH(Struts2、Spring、Hibernate)是Java开发中常见的三大开源框架,它们分别负责MVC...阅读提供的文档如`struts2-spring-hibernate.doc`和`SSH2整合.doc`,可以获取更详尽的步骤和注意事项。
1. 引入所需的jar包,包括Spring、Hibernate、Struts2及其依赖。 2. 创建并配置Spring的`applicationContext.xml`,定义数据源、SessionFactory、事务管理器等。 3. 在`web.xml`中配置Spring的上下文加载监听器`...
**整合Struts 2、Hibernate和Spring**: 将这三个框架整合在一起,可以创建一个强大的Web应用程序。Struts 2处理HTTP请求并调用业务逻辑,Spring管理对象依赖,而Hibernate则作为数据访问层,负责与数据库的交互。...
在"Spring3.1.1+Struct+hibernate3.x必须的jar包"中,"hibernate3.x必须的包.rar"可能包含了Hibernate框架所需的各种jar文件,如hibernate-core、hibernate-annotations、hibernate-commons-annotations等。...
在实际开发中,开发者还需要导入SSH整合所需的jar包,包括Struts2、Spring、Hibernate的核心库以及它们的依赖。例如,Struts2的struts2-core、Spring的spring-context、spring-beans、spring-tx,以及Hibernate的...
下面我们将详细探讨Spring 4、Struts2和Hibernate4的整合以及相关的知识点。 首先,Spring 4框架是IoC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)的代表,它为应用提供...
在这个项目中,“spring+struts2+hibernate整合实现分页”是一个基础教程,旨在帮助初学者理解如何在SSH框架下实现数据的分页展示。下面将详细讲解这个主题中的关键知识点。 1. **Spring框架**:Spring是Java应用的...
5. 整合应用:将Struts2、Spring和Hibernate整合在一起,可以实现高度解耦和模块化的开发。Spring可以管理Struts2的Action实例,以及Hibernate的数据访问对象(DAO),使得整个系统更加灵活和可扩展。同时,这三者...
Struts+Hibernate+Spring(SSH)整合是Java Web开发中常见的技术栈,它结合了三个强大的框架,分别负责MVC架构、对象关系映射(ORM)以及依赖注入和AOP(面向切面编程)。SSH整合使得开发过程更加高效且易于维护。 ...