maven学习 Day3 2018-11-21

2018-11-21  本文已影响0人  Ernest_Chou

二、Maven实战

3.通过maven整合ssh框架

<!-- 属性 -->
  <!-- struts的版本 ==> spring的版本4.3.13  ==> hibernate的版本 -->
  <properties>
    <!-- 统一源码的编码方式 -->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <!-- 统一各个框架版本 -->
    <struts.version>2.5.10</struts.version>
    <spring.version>4.3.10.RELEASE</spring.version>
    <hebernate.version>5.1.7.Final</hebernate.version>
  </properties>
  
  <build>
    <plugins>
        <!-- 统一源代码编译输出的JDK版本 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.7.0</version>
            <!-- 设置详细信息 -->
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
                <encoding>UTF-8</encoding>
            </configuration>
        </plugin>
    </plugins>
  </build>
   <!-- 版本锁定:指定项目中依赖的版本 -->
  <dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${spring.version}</version>
        </dependency> 
    </dependencies>
  </dependencyManagement>
  
  <dependencies>
    <!-- Struts2和Spring整合依赖 包含struts2和spring基础包  -->
    <!-- 包含Spring 核心依赖 Spring web依赖 Struts2 核心依赖  -->
    <dependency>
        <groupId>org.apache.struts</groupId>
        <artifactId>struts2-spring-plugin</artifactId>
        <version>${struts.version}</version>
    </dependency>
    <!-- spring基础jar包  4.2之后的新版本支持hibernate5  -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <!-- Spring web依赖 -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <!-- Spring整合ORM框架依赖 Spring集成Hibernate所需包 -->
    <dependency> 
        <groupId>org.springframework</groupId>
        <artifactId>spring-orm</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <!-- SpringAop所依赖的包 -->
    <!-- <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjweaver</artifactId>
        <version>1.8.10</version>
    </dependency> -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aspects</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-test</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <!-- Hibernate核心包 -->
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>${hebernate.version}</version>
    </dependency>
    <!-- 连接池 -->
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-c3p0</artifactId>
        <version>${hebernate.version}</version>
    </dependency>
    <!-- oracle驱动 -->
    <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0</version>
    </dependency>

    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.10</version>
    </dependency>
3.1 搭建struts2环境
  1. 创建struts2配置文件:struts.xml
  2. 在web.xml中配置struts2的核心过滤器
<!-- 配置struts核心过滤器 -->
  <filter>
    <filter-name>struts</filter-name>
        <!-- 高版本路径 -->
    <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
    <!-- 低版本路径 -->
    <!-- <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> -->
  </filter>
  <filter-mapping>
    <filter-name>struts</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
3.2 搭建spring环境
  1. 创建spring配置文件:applicationContext.xml
  2. 在web.xml中配置监听器:ContextLoaderListener
 <!-- 配置spring监听器 :默认加载WEB-INF/applicationContext.xml -->
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <!-- 通过上下文参数指定spring配置文件路径 -->
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
  </context-param>
3.3 搭建Hibernate环境
  1. 创建Hibernate核心配置文件
<?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="dialect">org.hibernate.dialect.Oracle10gDialect</property>
        <!-- 配置在控制台显示SQL语句 -->
        <property name="show_sql">true</property>
        <!-- 配置对输出的SQL语句进行格式化 -->
        <property name="format_sql">true</property>
        <property name="hbm2ddl.auto">none</property>
        <property name="myeclipse.connection.profile">ehrp</property>
        <property name="connection.url">jdbc:oracle:thin:@192.168.0.134:1521/ehrp</property>
        <property name="connection.username">user_developer</property>
        <property name="connection.password">user_developer</property>
        <property name="connection.driver_class">oracle.jdbc.OracleDriver</property>
    </session-factory>

</hibernate-configuration>
3.4 struts2跟spring整合

整合要点:action对象创建,交给spring创建

  1. 创建action类
  2. 将action对象配置到spring文件中
<!-- 配置action 必须配置scope为多实例 --> 
    <bean id="customerAction" class="com.zhougl.web.action.CustomerAction" scope="prototype">
    
    </bean>
  1. 在struts.xml中的action节点中class属性配置为spring工厂中action对象bean的id
<package name="demo" namespace="/" extends="struts-default">
        <!-- class为spring中action对象bean的id -->
        <action name="customerAction_*" class="customerAction" method="{1}">
            <result name="success">/index.jsp</result>
        </action>
    </package>
3.5 spring跟hibernate整合

整合要点

  <!-- 注解方式管理事务 start -->
  <!-- 1.开启注解驱动,2.在service类或者方法上使用注解@Transactional -->
  <tx:annotation-driven transaction-manager="transactionManager"/>
  <!-- 注解方式管理事务 end -->
3.6 需求

在地址栏输入action请求,action-service-dao。完成客户需求。

3.7 具体实现
上一篇 下一篇

猜你喜欢

热点阅读