`

SSH框架的搭建

    博客分类:
  • SSH
阅读更多

选择jar包

struts2

解压apps文件夹下的struts2-blank,选择里面lib文件夹下所有的jar包和相关lib下的包

asm.jar

asm-commons.jar

asm-tree.jar

commons-fileupload.jar

commons-io.jar

commons-lang.jar

commons-logging.jar

freemarker.jar

javassist-3.11.0.GA.jar

log4j.jar

ognl.jar

struts2-convention-plugin.jar

struts2-core.jar

xwork-core.jar

 

相关lib下的struts2jar包

commons-beanutils.jar

commons-collections.jar

aoplliance.jar

 

hibernate

lib下的required下的所有的jar包,optional下的c3p0下的jar包,jpa下的jar包

 

spring

spring-aop.jar

spring-aspects.jar

sprng-beans.jar

spring-context.jar

spring-core.jar

spring-expression.jar

spring-jdbc.jar

spring-orm.jar

spring-tx.jar

spring-web.jar

 

外加的包

aspectjweaver.jar

mysql-connector-java-bin.jar

dom4j.jar

slf4j-api.jar

slf4j-log4j.jar

 

配置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/j2ee" xmlns:javaee="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/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" id="WebApp_9" version="2.4">
  <!-- spring监听器 -->
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  
   <context-param>
  <param-name>contextConfigLocation</param-name> 
  <param-value>classpath:applicationContext.xml</param-value> 
  </context-param>
  
  <!-- openSessionInView配置 -->
	<filter>
		<filter-name>openSessionInViewFilter</filter-name>
		<filter-class>org.springframework.orm.hibernate4.support.OpenSessionInViewFilter</filter-class>
		<init-param>
			<param-name>singleSession</param-name>
			<param-value>true</param-value>
		</init-param>

<init-param>  
<param-name>sessionFactoryBeanName</param-name>  
<param-value>sessionFactory</param-value>  
</init-param>   
</filter> 
 
<filter-mapping>  
<filter-name>openSessionInViewFilter</filter-name>  
<url-pattern>/*</url-pattern>  
</filter-mapping>
	
  <!-- Struts2配置 -->
<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>register.jsp</welcome-file>
  </welcome-file-list>
  
  <!--编码问题 -->
	<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>
		<init-param>   
            <param-name>forceEncoding</param-name>   
            <param-value>true</param-value>   
        </init-param> 
	</filter>
	<filter-mapping>
		<filter-name>encodingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
</web-app>

 

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:p="http://www.springframework.org/schema/p"
    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.xsd
        http://www.springframework.org/schema/context 
        http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/aop
         http://www.springframework.org/schema/aop/spring-aop.xsd
         http://www.springframework.org/schema/tx
         http://www.springframework.org/schema/tx/spring-tx.xsd
         "
 default-autowire="byName">
			
	<!--凡是要注解的对象都在com.jyjsf这个包下找-->
	<context:annotation-config />
	<context:component-scan base-package="com.ynaidi" />
	
	<!-- —————————————————————————————————————————————————— -->
	<!-- 使用SpringAOP管理Hibernate中的Transaction——声明式事务管理 -->
	<!-- —————————————————————————————————————————————————— -->

	<!-- 声明数据源头 -->
	<bean id="dataSourceBean" 
		class="org.springframework.jdbc.datasource.DriverManagerDataSource">
		<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
		<property name="url" value="jdbc:mysql://localhost:3306/ssh"/>
		<property name="username" value="root"/>
		<property name="password" value="123"/>
	</bean>

	
	<!-- 声明由Spring提供的Hibernate SessionFactory -->	
	<bean id="sessionFactory" 
		class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"
		scope="singleton">
		<property name="configLocation" value="classpath:hibernate.cfg.xml"/>
		<property name="dataSource" ref="dataSourceBean"/>
		<property name="packagesToScan" value="com.ynaidi.model" /> 
	</bean>
	  <bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor" />
	<!-- 声明由Spring提供的Hibernate事务管理器——就是一个切面Bean -->
	<bean id="txManagerBean"
		class="org.springframework.orm.hibernate4.HibernateTransactionManager">
		<property name="sessionFactory" ref="sessionFactory"/>
	</bean>
	
	<!-- 将上述的txManagerBean声明为AOP中的切面 -->
	<aop:config>
		<aop:pointcut id="allModelMethod" expression="execution(* com.jyjsf.service.*.*(..))" />
		<!-- 使用advisor代替aspect -->
		<aop:advisor advice-ref="txManagerAdvice" pointcut-ref="allModelMethod"/>
	</aop:config>
	
	<!-- 声明管理事务的advice——无需指定执行方法,只需要指定事务管理器即可 -->
	<tx:advice id="txManagerAdvice" transaction-manager="txManagerBean">
		<tx:attributes>
			 <tx:method name="exists" read-only="true" />  
        <tx:method name="save*" propagation="REQUIRED" />    
       <tx:method name="add*" propagation="REQUIRED" />    
        <tx:method name="create*" propagation="REQUIRED" />    
        <tx:method name="insert*" propagation="REQUIRED" />    
        <tx:method name="update*" propagation="REQUIRED" />    
        <tx:method name="merge*" propagation="REQUIRED" />    
        <tx:method name="del*" propagation="REQUIRED" />    
        <tx:method name="remove*" propagation="REQUIRED" />    
        <tx:method name="put*" propagation="REQUIRED" />    
        <tx:method name="use*" propagation="REQUIRED"/>    
        <!-- hibernate4必须配置为开启事务 否则 getCurrentSession()获取不到    --> 
        <tx:method name="get*" propagation="REQUIRED" />    
        <tx:method name="count*" propagation="REQUIRED" read-only="true" />    
        <tx:method name="find*" propagation="REQUIRED" read-only="true" />    
        <tx:method name="list*" propagation="REQUIRED" read-only="true" />   
         <tx:method name="*" propagation="REQUIRED" />  
		</tx:attributes>
	</tx:advice>
	
	<bean class="org.springframework.beans.factory.config.CustomScopeConfigurer">
        <property name="scopes">
            <map>
                <entry key="session">
                    <bean class="org.springframework.web.context.request.SessionScope" />
                </entry>
                <entry key="request">
                    <bean class="org.springframework.web.context.request.RequestScope" />
                </entry>
            </map>
        </property>
    </bean>
	
	
</beans>

 

hibernate.cfg.xml

<!DOCTYPE hibernate-configuration PUBLIC
	"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
	"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
	<session-factory>
		<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
		<property name="show_sql">true</property>
		<property name="format_sql">true</property>
		<property name="hbm2ddl.auto">update</property>
	</session-factory>
</hibernate-configuration>

 

 

struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">
  <struts>
    <constant name="struts.enable.DynamicMethodInvocation" value="true" />
    <constant name="struts.devMode" value="false" />
    <constant name="struts.ui.theme" value="simple" />
    <!-- 允许上传的最大数据 -->
    <constant name="struts.multipart.maxSize" value="10737418240"/>
    <!-- 报错异常的中文转译 -->
    <constant name="struts.custom.i18n.resources" value="uploadmessage"></constant>
    
<!--     定义全局package -->
  <package name="defaultpackage" extends="struts-default">
    <interceptors>
   <interceptor-stack name="defStack">
    <interceptor-ref name="defaultStack"></interceptor-ref>
    <interceptor-ref name="sessionNull"></interceptor-ref>
   </interceptor-stack>
   <interceptor name="sessionNull" class="com.jyjsf.interceptor.SessionNullInterceptor" />
  </interceptors>
  <default-interceptor-ref name="defStack" />
  
  <global-results>
                 <result name="sessionnull">
                       /login.jsp
                 </result>    
            </global-results>
  
 </package>
 
</struts>

 SSH目录树结构如附件图

 

  • 大小: 33 KB
分享到:
评论

相关推荐

    SSH框架搭建源码

    这个压缩包文件"SSHdemo"提供了一个SSH框架搭建登录功能的示例,帮助开发者了解并实践如何整合这三个框架来构建一个完整的Web应用程序。 **Struts2** 是一个基于MVC(Model-View-Controller)设计模式的Java Web...

    SSH框架搭建步骤

    以下将详细介绍SSH框架搭建的步骤。 **Spring框架** 1. **环境准备**:首先确保已安装JDK,并配置好环境变量。然后下载Spring框架的库文件,将其添加到项目的类路径中。 2. **创建项目**:使用IDE如Eclipse或...

    SSH框架搭建jar包

    以上就是SSH框架的基本概念和搭建环境的过程。理解并掌握这三个框架,能帮助开发者高效地构建出健壮、可维护的Java Web应用程序。在实际开发中,SSH框架的使用可以极大地提高开发效率,降低项目风险,因此是许多企业...

    ssh框架搭建用到的包完整版.zip

    在本文中,我们将深入探讨SSH框架搭建过程中涉及到的关键知识点。 首先,Spring框架是SSH的核心,它负责管理应用程序的组件和依赖关系。Spring提供了依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-...

    基于MyEclipse的SSH框架搭建

    【基于MyEclipse的SSH框架搭建步骤】 1. 创建Java Web项目:在MyEclipse中,选择"New -&gt; Dynamic Web Project",设定项目名称和J2EE版本。 2. 添加Hibernate支持: - 切换到"MyEclipse Hibernate"透视图,创建...

    ssh框架搭建

    ### SSH框架搭建详解 #### 一、概述 SSH框架,即Struts+Spring+Hibernate的组合,是Java Web开发中的经典MVC模式架构之一。它集合了Struts2的前端控制、Spring的业务逻辑处理与依赖注入、以及Hibernate的对象关系...

    ssh框架搭建实例源码2

    本资源是在“ssh框架搭建实例源码1”基础上增加了修改了分页技术,实现数据从数据库中读取,并补充“ssh框架搭建实例源码1”中忘记上传的与分页技术相关的jar包,更新数据库文件ssh.sql。本资源所需的jar包请到“ssh...

    最新SSH框架搭建

    ### 最新SSH框架搭建知识点详解 #### 一、概述 SSH框架是指Struts2、Spring以及Hibernate三个开源框架的组合,常被用于Java Web应用程序的开发。本文将详细介绍如何使用Eclipse IDE搭建SSH框架(Struts2.5.10 + ...

    SSH框架搭建详细图文教程

    在SSH框架搭建步骤中: 1. 新建Web项目:在MyEclipse中创建一个新的Web项目,例如名为"SSH"。 2. 添加Struts2框架:右键点击项目,选择MyEclipse -&gt; Add Struts Capabilities,设置基包路径。 3. 配置Spring框架:...

    ssh框架搭建所需要的全部jar包

    尽管这个压缩包包含了SSH框架搭建所需的基本库,但现代的开发实践中,使用构建工具如Maven或Gradle来管理依赖是更佳的选择。Maven是一个项目管理和综合工具,它可以自动下载所需的jar包,解决依赖冲突,并提供构建...

    ssh框架搭建( spring4.3.8、struts2.5.1、hibernate5.2.1)

    SSH框架是Java开发中常用的三大框架集成,包括Spring、Struts和Hibernate。这些框架的组合为开发者提供了模型-视图...提供的SSH框架搭建.docx文档应该包含详细的步骤指导和示例代码,是学习SSH框架集成的重要参考资料。

    ssh框架搭建实例源码4

    本资源所需的jar包请到“ssh框架搭建实例源码2”和“ssh框架搭建实例源码”中下载: http://download.csdn.net/detail/linchengzhi/4100204 http://download.csdn.net/download/linchengzhi/4076267 相关链接: ...

    SSH框架搭建

    在SSH框架搭建过程中,首先需要配置各个框架的基本环境,包括添加相应的库文件到项目中,设置项目构建路径,以及配置web.xml文件以启动Struts2和Spring。接下来,定义实体类并进行Hibernate的映射配置,创建DAO...

    ssh框架搭建实例源码6

    本资源是在“ssh框架搭建实例源码5替换”基础上使用struts2通配符进行CRUD的跳转;使用struts2标签进行分页显示和回显,使得项目结构相当清晰,极易理解和再次利用。 注意:请点击报警管理进行操作,其它链接功能...

    SSH框架搭建的网上书店系统

    SSH框架搭建的网上书店系统是一种基于Java开发的Web应用程序,主要使用了Struts2、Hibernate和Spring这三大框架。这个系统提供了丰富的功能,包括用户端的注册、登录、购物车管理和购书流程,以及管理员端的订单处理...

    ssh框架搭建实例源码5

    本资源所需的jar包请到“ssh框架搭建实例源码2”和“ssh框架搭建实例源码”中下载: http://download.csdn.net/detail/linchengzhi/4100204 http://download.csdn.net/download/linchengzhi/4076267 相关链接: ...

    ssh框架搭建实例源码7

    本资源是在“ssh框架搭建实例源码6”基础上实现注解自动注入功能,简化了spring的配置,并解决了按F5刷新页面出现错误的bug。 本资源所需的jar包请到“ssh框架搭建实例源码2”和“ssh框架搭建实例源码”中下载: ...

    ssh框架搭建实例源码5替换

    本资源是在“ssh框架搭建实例源码4”基础上增加了数据类型转换功能;增加了数据验证功能;进行较好的测试和修改;进行部分代码注释;成功移植到ssm(strut2、spring、mybatis)实现了“hibernate和mybatis的之CRUD...

    ssh框架搭建及实例ssh框架

    ssh框架搭建及实例ssh框架 ssh框架搭建及实例ssh框架

Global site tag (gtag.js) - Google Analytics