SSH框架整合

来源:互联网 发布:淘宝修改评价链接 编辑:程序博客网 时间:2024/06/01 20:47

SSH整合(通过手动去引入jar包,而不是自动的添加三大框架的开发能力):

1.创建一个web工程:

2.引入jar包和配置文件:

struts2:

需要的jar包:

    struts-2.3.15.3\apps\struts2-blank.war\WEB-INF\lib\*.jar    struts-2.3.15.3\lib\struts2-json-plugin-2.3.15.3.jar    struts-2.3.15.3\lib\struts2-spring-plugin-2.3.15.3.jar

* 配置文件:

 <!-- 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"><!-- 配置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></web-app>

*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>    <package name="shop" extends="struts-default" namespace="/">    <!--package必须写,且extends="struts-default",里面才能使用很多拦截器 拦截所有.action请求    -->        <!-- 配置**访问的action -->    </package></struts>

* Spring:

Spring3.2 开发最基本jar包

    spring-beans-3.2.0.RELEASE.jar    spring-context-3.2.0.RELEASE.jar    spring-core-3.2.0.RELEASE.jar    spring-expression-3.2.0.RELEASE.jar    com.springsource.org.apache.commons.logging-1.1.1.jar    com.springsource.org.apache.log4j-1.2.15.jar

AOP开发的jar包

    spring-aop-3.2.0.RELEASE.jar    spring-aspects-3.2.0.RELEASE.jar    com.springsource.org.aopalliance-1.0.0.jar    com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar    Spring Jdbc开发    spring-jdbc-3.2.0.RELEASE.jar    spring-tx-3.2.0.RELEASE.jar    Spring事务管理    spring-tx-3.2.0.RELEASE.jar    Spring整合其他ORM框架    spring-orm-3.2.0.RELEASE.jar    Spring在web中使用    spring-web-3.2.0.RELEASE.jar    Spring整合Junit测试    spring-test-3.2.0.RELEASE.jar

* 配置文件:

<!-- 在web.xml中添加这些代码(配置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>

* 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.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">    <!-- 配置连接池: -->    <!-- 引入外部属性文件 -->    <!-- 配置C3P0连接池: -->    <!-- 注入连接池 -->    <!-- 配置Hibernate的其他的属性 -->    <!-- 事务管理: -->    <!-- 事务管理器 -->    <!-- 开启注解事务 -->    <!-- Action的配置 ===========================-->    <!-- Service的配置  ===========================-->    <!-- Dao的配置  ===========================--></beans>

*引入 log4j.properties文件

### direct log messages to stdout ###log4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target=System.outlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n### direct messages to file mylog.log ###log4j.appender.file=org.apache.log4j.FileAppenderlog4j.appender.file.File=c:/mylog.loglog4j.appender.file.layout=org.apache.log4j.PatternLayoutlog4j.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=info, stdout

Hibernate:

Hibernatejar包:

     hibernate-distribution-3.6.10.Final\hibernate3.jar     hibernate-distribution-3.6.10.Final\lib\required\*.jar     hibernate-distribution-3.6.10.Final\lib\jpa\*.jar     slf4j-log4j整合的jar包 :     数据库驱动:     连接池:(c3p0连接池)

配置文件:

没有hibernate的核心配置文件的方式整合:

映射文件:

3.配置基本配置信息(都是在applicationContext.xml中):

* C3P0连接池:
* 引入外部属性文件:
* jdbc.properties
* 配置连接池:

    <!-- 配置连接池: -->    <!-- 引入外部属性文件 -->    <context:property-placeholder location="classpath:jdbc.properties"/>    <!-- 配置C3P0连接池: -->    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">        <property name="driverClass" value="${jdbc.driver}"/>        <property name="jdbcUrl" value="${jdbc.url}"/>        <property name="user" value="${jdbc.user}"/>        <property name="password" value="${jdbc.password}"/>    </bean>

* Hibernate相关信息:

<!-- Hibernate的相关信息 -->    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">        <!-- 注入连接池 -->        <property name="dataSource" ref="dataSource"/>        <!-- 配置Hibernate的其他的属性 -->        <property name="hibernateProperties">            <props>                <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>                <prop key="hibernate.show_sql">true</prop>                <prop key="hibernate.format_sql">true</prop>                <prop key="hibernate.connection.autocommit">false</prop>                <prop key="hibernate.hbm2ddl.auto">update</prop>            </props>        </property>        <!-- 配置Hibernate的映射文件 -->    </bean>

*事务管理:

    <!-- 事务管理: -->    <!-- 事务管理器 -->    <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">        <property name="sessionFactory" ref="sessionFactory"/>    </bean>    <!-- 开启注解事务 -->    <tx:annotation-driven transaction-manager="transactionManager"/>

*注意: 用这种方法整合可以不需要新建一个hibernate.cfg.xml这样一个配置文件,也不需要生成SessionFactory工具类,都已经在applicationContext.xml配置好了。

1 0
原创粉丝点击