很开心,今天终于在eclipse手动的搭建好了SSH框架。在此记录下来待以后继续学习。
1, spring整合struts
首先在web.xml里添加上
- <!-- Spring Framework -->
- <listener>
- <listener-class>
- org.springframework.web.context.ContextLoaderListener
- </listener-class>
- </listener>
- <context-param>
- <param-name>contextConfigLocation</param-name>
- <!-- applicationContext.xml路径 -->
- <param-value>/WEB-INF/applicationContext*.xml</param-value>
- </context-param>
<!-- Spring Framework --> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <context-param> <param-name>contextConfigLocation</param-name> <!-- applicationContext.xml路径 --> <param-value>/WEB-INF/applicationContext*.xml</param-value> </context-param>
在struts.xml里(以简单登陆为例)
- <struts>
- <!-- 配置了系列常量 -->
- <package name="default" extends="struts-default">
- <!-- common action 其中class里应该是spring 中bean 的id-->
- <action name="Login" class="loginAction">
- <result name="success">/WEB-INF/CONTENT/common/homePage.jsp</result>
- <result name="error">/WEB-INF/CONTENT/common/error.jsp</result>
- <result name="INPUT">/WEB-INF/CONTENT/common/Login.jsp</result>
- </action>
- </package>
- </struts>
<struts> <!-- 配置了系列常量 --> <package name="default" extends="struts-default"> <!-- common action 其中class里应该是spring 中bean 的id--> <action name="Login" class="loginAction"> <result name="success">/WEB-INF/CONTENT/common/homePage.jsp</result> <result name="error">/WEB-INF/CONTENT/common/error.jsp</result> <result name="INPUT">/WEB-INF/CONTENT/common/Login.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:aop="http://www.springframework.org/schema/aop"
- xmlns:p="http://www.springframework.org/schema/p"
- 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/tx
- http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
- http://www.springframework.org/schema/aop
- http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
- <bean name="loginService" class="com.nwu.hrsystem.service.impl.LoginServiceImpl">
- </bean>
- <!-- Action 注入给Service -->
- <bean id="loginAction" class="com.nwu.hrsystem.action.LoginAction"
- scope="prototype">
- <property name="loginService" ref="loginService"></property>
- </bean>
- </beans>
<?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:p="http://www.springframework.org/schema/p" 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/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd"> <bean name="loginService" class="com.nwu.hrsystem.service.impl.LoginServiceImpl"> </bean> <!-- Action 注入给Service --> <bean id="loginAction" class="com.nwu.hrsystem.action.LoginAction" scope="prototype"> <property name="loginService" ref="loginService"></property> </bean> </beans>
我们可以在LoginServiceImpl里写个验证代码检验一下。
2,spring整合hibernate
在applicationContext.xml里添加上
- <!-- 定义数据源Bean,使用C3P0数据源实现 -->
- <!-- 设置连接数据库的驱动、URL、用户名、密码
- 连接池最大连接数、最小连接数、初始连接数等参数 -->
- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
- destroy-method="close"
- p:driverClass="com.mysql.jdbc.Driver"
- p:jdbcUrl="jdbc:mysql://localhost:3306/myhrSystem"
- p:user="root"
- p:password="1"
- p:maxPoolSize="40"
- p:minPoolSize="1"
- p:initialPoolSize="1"
- p:maxIdleTime="20"/>
- <!-- 定义Hibernate的SessionFactory -->
- <!-- 依赖注入数据源,注入正是上面定义的dataSource -->
- <bean id="sessionFactory"
- class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"
- p:dataSource-ref="dataSource">
- <!-- mappingResouces属性用来列出全部映射文件 -->
- <property name="mappingResources">
- <list>
- <!-- 以下用来列出Hibernate映射文件 -->
- <value>com/nwu/hrsystem/beans/User.hbm.xml</value>
- </list>
- </property>
- <!-- 定义Hibernate的SessionFactory的属性 -->
- <property name="hibernateProperties">
- <!-- 指定数据库方言、是否自动建表
- 是否生成SQL语句等 -->
- <value>
- hibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialect
- hibernate.hbm2ddl.auto=update
- hibernate.show_sql=true
- hibernate.format_sql=true
- #开启二级缓存
- hibernate.cache.use_second_level_cache=true
- #设置二级缓存的提供者
- hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
- </value>
- </property>
- </bean>
<!-- 定义数据源Bean,使用C3P0数据源实现 --> <!-- 设置连接数据库的驱动、URL、用户名、密码 连接池最大连接数、最小连接数、初始连接数等参数 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close" p:driverClass="com.mysql.jdbc.Driver" p:jdbcUrl="jdbc:mysql://localhost:3306/myhrSystem" p:user="root" p:password="1" p:maxPoolSize="40" p:minPoolSize="1" p:initialPoolSize="1" p:maxIdleTime="20"/> <!-- 定义Hibernate的SessionFactory --> <!-- 依赖注入数据源,注入正是上面定义的dataSource --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean" p:dataSource-ref="dataSource"> <!-- mappingResouces属性用来列出全部映射文件 --> <property name="mappingResources"> <list> <!-- 以下用来列出Hibernate映射文件 --> <value>com/nwu/hrsystem/beans/User.hbm.xml</value> </list> </property> <!-- 定义Hibernate的SessionFactory的属性 --> <property name="hibernateProperties"> <!-- 指定数据库方言、是否自动建表 是否生成SQL语句等 --> <value> hibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialect hibernate.hbm2ddl.auto=update hibernate.show_sql=true hibernate.format_sql=true #开启二级缓存 hibernate.cache.use_second_level_cache=true #设置二级缓存的提供者 hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider </value> </property> </bean>
在User.hbm.xml中要注意与PO类User.java 里定义的各种属性及数据库要对应,不然会出错
这样SSH框架就搭建好了,我们可以用一个简单的登陆系统的例子检验一下:
完整的配置文件
web.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
- <display-name>HRSystem</display-name>
- <!-- Struts 2 Filter -->
- <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>
- <!-- Spring Framework -->
- <listener>
- <listener-class>
- org.springframework.web.context.ContextLoaderListener
- </listener-class>
- </listener>
- <context-param>
- <param-name>contextConfigLocation</param-name>
- <!-- applicationContext.xml路径 -->
- <param-value>/WEB-INF/applicationContext*.xml</param-value>
- </context-param>
- <!-- welcome file -->
- <welcome-file-list>
- <welcome-file>/WEB-INF/CONTENT/common/Login.jsp</welcome-file>
- </welcome-file-list>
- </web-app>
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>HRSystem</display-name> <!-- Struts 2 Filter --> <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> <!-- Spring Framework --> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <context-param> <param-name>contextConfigLocation</param-name> <!-- applicationContext.xml路径 --> <param-value>/WEB-INF/applicationContext*.xml</param-value> </context-param> <!-- welcome file --> <welcome-file-list> <welcome-file>/WEB-INF/CONTENT/common/Login.jsp</welcome-file> </welcome-file-list> </web-app>
struts.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- 指定Struts2配置文件的DTD信息 -->
- <!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
- "http://struts.apache.org/dtds/struts-2.1.7.dtd">
- <!-- Struts2配置文件的根元素 -->
- <struts>
- <!-- 配置了系列常量 -->
- <package name="default" extends="struts-default">
- <!-- common action -->
- <action name="Login" class="loginAction">
- <result name="success">/WEB-INF/CONTENT/common/homePage.jsp</result>
- <result name="error">/WEB-INF/CONTENT/common/error.jsp</result>
- </action>
- </package>
- </struts>
<?xml version="1.0" encoding="UTF-8"?> <!-- 指定Struts2配置文件的DTD信息 --> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN" "http://struts.apache.org/dtds/struts-2.1.7.dtd"> <!-- Struts2配置文件的根元素 --> <struts> <!-- 配置了系列常量 --> <package name="default" extends="struts-default"> <!-- common action --> <action name="Login" class="loginAction"> <result name="success">/WEB-INF/CONTENT/common/homePage.jsp</result> <result name="error">/WEB-INF/CONTENT/common/error.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:aop="http://www.springframework.org/schema/aop"
- xmlns:p="http://www.springframework.org/schema/p"
- 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/tx
- http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
- http://www.springframework.org/schema/aop
- http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
- <!-- 定义数据源Bean,使用C3P0数据源实现 -->
- <!-- 设置连接数据库的驱动、URL、用户名、密码
- 连接池最大连接数、最小连接数、初始连接数等参数 -->
- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
- destroy-method="close"
- p:driverClass="com.mysql.jdbc.Driver"
- p:jdbcUrl="jdbc:mysql://localhost:3306/myhrSystem"
- p:user="root"
- p:password="1"
- p:maxPoolSize="40"
- p:minPoolSize="1"
- p:initialPoolSize="1"
- p:maxIdleTime="20"/>
- <!-- 定义Hibernate的SessionFactory -->
- <!-- 依赖注入数据源,注入正是上面定义的dataSource -->
- <bean id="sessionFactory"
- class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"
- p:dataSource-ref="dataSource">
- <!-- mappingResouces属性用来列出全部映射文件 -->
- <property name="mappingResources">
- <list>
- <!-- 以下用来列出Hibernate映射文件 -->
- <value>com/nwu/hrsystem/beans/User.hbm.xml</value>
- </list>
- </property>
- <!-- 定义Hibernate的SessionFactory的属性 -->
- <property name="hibernateProperties">
- <!-- 指定数据库方言、是否自动建表
- 是否生成SQL语句等 -->
- <value>
- hibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialect
- hibernate.hbm2ddl.auto=update
- hibernate.show_sql=true
- hibernate.format_sql=true
- #开启二级缓存
- hibernate.cache.use_second_level_cache=true
- #设置二级缓存的提供者
- hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
- </value>
- </property>
- </bean>
- <!-- Dao 注入session 工厂 -->
- <bean id="employeeDao" class="com.nwu.hrsystem.dao.impl.EmployeeDaoImpl">
- <property name="sessionFactory">
- <ref bean="sessionFactory"></ref>
- </property>
- </bean>
- <!-- Service 注入给Dao -->
- <bean name="loginService" class="com.nwu.hrsystem.service.impl.LoginServiceImpl">
- <property name="employeeDao">
- <ref bean="employeeDao"></ref>
- </property>
- </bean>
- <!-- Action 注入给Service -->
- <bean id="loginAction" class="com.nwu.hrsystem.action.LoginAction"
- scope="prototype">
- <property name="loginService" ref="loginService"></property>
- </bean>
- </beans>
<?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:p="http://www.springframework.org/schema/p" 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/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd"> <!-- 定义数据源Bean,使用C3P0数据源实现 --> <!-- 设置连接数据库的驱动、URL、用户名、密码 连接池最大连接数、最小连接数、初始连接数等参数 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close" p:driverClass="com.mysql.jdbc.Driver" p:jdbcUrl="jdbc:mysql://localhost:3306/myhrSystem" p:user="root" p:password="1" p:maxPoolSize="40" p:minPoolSize="1" p:initialPoolSize="1" p:maxIdleTime="20"/> <!-- 定义Hibernate的SessionFactory --> <!-- 依赖注入数据源,注入正是上面定义的dataSource --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean" p:dataSource-ref="dataSource"> <!-- mappingResouces属性用来列出全部映射文件 --> <property name="mappingResources"> <list> <!-- 以下用来列出Hibernate映射文件 --> <value>com/nwu/hrsystem/beans/User.hbm.xml</value> </list> </property> <!-- 定义Hibernate的SessionFactory的属性 --> <property name="hibernateProperties"> <!-- 指定数据库方言、是否自动建表 是否生成SQL语句等 --> <value> hibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialect hibernate.hbm2ddl.auto=update hibernate.show_sql=true hibernate.format_sql=true #开启二级缓存 hibernate.cache.use_second_level_cache=true #设置二级缓存的提供者 hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider </value> </property> </bean> <!-- Dao 注入session 工厂 --> <bean id="employeeDao" class="com.nwu.hrsystem.dao.impl.EmployeeDaoImpl"> <property name="sessionFactory"> <ref bean="sessionFactory"></ref> </property> </bean> <!-- Service 注入给Dao --> <bean name="loginService" class="com.nwu.hrsystem.service.impl.LoginServiceImpl"> <property name="employeeDao"> <ref bean="employeeDao"></ref> </property> </bean> <!-- Action 注入给Service --> <bean id="loginAction" class="com.nwu.hrsystem.action.LoginAction" scope="prototype"> <property name="loginService" ref="loginService"></property> </bean> </beans>
User.hbm.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- 指定Hibernate映射文件的DTD信息 -->
- <!DOCTYPE hibernate-mapping PUBLIC
- "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
- "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
- <!-- Hibernate映射文件的根元素 -->
- <hibernate-mapping package="com.nwu.hrsystem.beans">
- <class name="User" table="user_tab"
- discriminator-value="1">
- <!-- 使用只读缓存 -->
- <cache usage="read-only"/>
- <!-- 映射标识属性 -->
- <id name="user_id" type="java.lang.Integer" column="user_id">
- <!-- 指定使用native主键生成策略 -->
- <generator class="native"/>
- </id>
- <!-- 映射普通属性 -->
- <property name="user_name" column="user_name" type="java.lang.String"
- not-null="true" length="15" />
- <property name="user_pwd" column="user_pwd" type="java.lang.String"
- not-null="true" length="15"/>
- </class>
- </hibernate-mapping>
<?xml version="1.0" encoding="UTF-8"?> <!-- 指定Hibernate映射文件的DTD信息 --> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> <!-- Hibernate映射文件的根元素 --> <hibernate-mapping package="com.nwu.hrsystem.beans"> <class name="User" table="user_tab" discriminator-value="1"> <!-- 使用只读缓存 --> <cache usage="read-only"/> <!-- 映射标识属性 --> <id name="user_id" type="java.lang.Integer" column="user_id"> <!-- 指定使用native主键生成策略 --> <generator class="native"/> </id> <!-- 映射普通属性 --> <property name="user_name" column="user_name" type="java.lang.String" not-null="true" length="15" /> <property name="user_pwd" column="user_pwd" type="java.lang.String" not-null="true" length="15"/> </class> </hibernate-mapping>
值得注意的是:User.java文件里首先其定义的成员变量的类型要和数据库里数据表里的每列的类型要一样。其次其成员变量要设定get,set方法。
在action层里声明service层时,在service层声明Dao层时也需要添加get,set方法 且其引用名得和spring配置文件里各层bean里property的name属性要一致。
比如在action里定义了个 private LoginService loginService; 然后就要给其添加get,set方法。并且在applicationContext.xml中,
- <bean id="loginAction" class="com.nwu.hrsystem.action.LoginAction"
- scope="prototype">
- <property name="loginService" ref="loginService"></property>
- </bean>
<bean id="loginAction" class="com.nwu.hrsystem.action.LoginAction" scope="prototype"> <property name="loginService" ref="loginService"></property> </bean>
在搭建框架时我遇到过这样的一个异常:
Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.HibernateException: Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer]
在网上查了很多资料有人说是缺jar包,有人说是配置文件有问题。经过我细细排查发现在User.hbm.xml文件里的一个user_pwd属性列里我写成了uesr_pwd,修改过后,终于跑通了。所以在我们写这类文件时千万要注意,不能写错,不然的话又要花很多时间来检查。
相关推荐
SSH框架是三个开源Java框架的组合,分别是Struts、Spring和Hibernate,它们常被用于构建企业级的Web应用程序。Struts作为MVC(Model-View-Controller)设计模式的实现,负责控制应用程序流程;Spring则提供了一个...
### SSH框架整合详细步骤(spring+struts2+hibernate) #### 一、整合概述 在现代Web应用开发中,SSH(Struts2、Spring、Hibernate)框架因其各自独特的功能和优势,常被组合使用以构建高效、稳定且易于维护的系统...
SSH框架是Java Web开发中广泛使用的三大开源框架的组合,包括Struts、Spring和Hibernate。它们各自负责不同的职责,协同工作以实现高效、灵活的Web应用程序。 **Struts** 是一个基于MVC(Model-View-Controller)...
Eclipse搭建SSH(Struts2+Spring3+Hibernate3)框架项目涉及到的知识点涵盖了Java Web开发中常用的三个框架技术,即Struts2、Spring和Hibernate。这个教程旨在指导开发者如何将这三种技术整合在一起,构建一个Web...
SSH整合,全称为Struts、Spring和Hibernate的集成,是一种常见的Java Web开发框架组合,用于构建高效、可维护的企业级应用程序。在这个例子中,我们看到的是一个基于SSH的用户注册功能的实现,使用的开发工具是...
SSH,即Struts2、Hibernate和Spring的组合,是Java Web开发中的一种经典框架集成,用于构建企业级的MVC(Model-View-Controller)应用。这个整合旨在提供一个高效、灵活且可扩展的开发环境,使开发者可以专注于业务...
Eclipse 搭建 SSH 架构(Struts + Spring + Hibernate) Eclipse 是一个功能强大且功能丰富的集成开发环境(IDE), SSH 架构(Struts + Spring + Hibernate)是 Java Web 开发中常用的架构模式。下面将详细介绍...
对应博文 eclipse环境搭建ssh(Struts2+Spring2.5+Hibernate3)框架小谈(上) eclipse环境搭建ssh(Struts2+Spring2.5+Hibernate3)框架小谈(下)
接下来,我们将继续完成SSH框架的搭建过程,包括Spring和Hibernate的配置,以及整合各个组件之间的依赖关系。此外,还会涉及如何利用这些框架实现常见的企业级应用功能,如用户认证、数据持久化等。在后续的文章中,...
在IT行业中,SSH(Spring、Struts和Hibernate)是一个经典的Java Web开发框架组合,用于构建高效、可维护的Web应用程序。下面将详细讲解如何在Eclipse环境中整合这三个框架,并实现一个可以直接运行的项目。 首先,...
SSH框架,全称为Struts2、Spring和Hibernate的组合,是Java Web开发中常见的三大开源框架集成。在构建SSH框架时,每个框架都扮演着不同的角色,以提供一个高效、可扩展的后端架构。现在我们来详细了解一下搭建SSH...
总结,Eclipse下搭建SSH2框架主要涉及Struts2和Spring的整合,这需要正确导入库文件,配置相应的XML文件,并编写Action类来处理业务逻辑。这个过程对于理解MVC架构和Java Web开发的流程至关重要,同时也为后续深入...
在Eclipse中整合SSH框架,首先需要创建一个新的Dynamic Web Project,然后引入Struts2、Spring和Hibernate的相应库。接下来,配置项目的web.xml文件,设置过滤器、监听器以及Servlet。对于Struts2,需要添加struts2-...
"Eclipse基于注解方式搭建SSH框架"项目展示了如何在Eclipse环境中利用注解驱动的方式集成Struts2、Spring和Hibernate,实现了一个包含注册功能的Web应用。项目中使用了JPA注解简化了数据库交互,并通过数据库脚本...
Eclipse搭建SSH(Struts2+Spring3+Hibernate3)框架项目涉及的知识点非常丰富,下面将对标题和描述中的知识点进行详细阐述。 首先,SSH框架是由三个非常流行的Java EE开源框架组合而成的,即Struts2、Spring和...
Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们的整合通常被称为SSH整合,是构建企业级应用的一种常用技术栈。本项目是基于Eclipse集成开发环境,结合MySQL数据库实现的一个基础的增删改查功能。接...
Struts-Spring-Hibernate(SSH)是Java Web开发中经典的三大框架组合,它们各自负责不同的职责,协同工作以提升应用程序的效率和可维护性。Struts处理MVC(Model-View-Controller)架构中的控制器部分,Spring作为...
《精通J2EE--Eclipse、Struts、Hibernate及Spring整合应用案例完整源码》是针对Java企业级开发的一份重要资源,它涵盖了四个关键的技术领域:Eclipse集成开发环境,Struts MVC框架,Hibernate对象关系映射工具,以及...
在开发环境中,尤其是Java Web开发中,SSH通常指的是Spring、Struts和Hibernate这三大框架的组合,它们是构建企业级应用的强大工具。本教程将详细介绍如何在Eclipse集成开发环境下搭建SSH环境。 一、安装Eclipse ...