zoukankan      html  css  js  c++  java
  • ssh整合开发

    ssh整合思想

    ssh整合

    第一步:导入ssh相关jar包

    第二步:搭建struts环境

         (1)创建 action  struts.xml配置文件, 配置action

    struts.xml约束

    <!DOCTYPE struts PUBLIC
    	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    	"http://struts.apache.org/dtds/struts-2.3.dtd">

          (2) 配置struts的过滤器

      <!-- struts过滤 -->
      	<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>
    

    第三步:搭建hibernate环境

       (1)创建实体类

       (2)配置实体类与数据表映射关系

                映射文件约束:

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

       (3)创建hibernate核心配置文件

                  核心配置文件约束:

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

       (4)引入映射配置文件

    第四步: 搭建spring核心配置文件

           (1)创建spring核心配置文件

       (2)由于第一次访问比较慢,让spring配置文件在服务器启动时加载(监听器)

    配置监听器并指定spring核心配置文件位置

    <!-- 配置监听器让spring配置文件在服务器启动时候加载 -->
    <listener>
    	<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <!-- 指定spring配置文件位置 -->
    <context-param>
    	<param-name>contextLoaderListener</param-name>
    	<param-value>classpath:bean1.xml</param-value>
    </context-param>
    

    第五步: struts2与spring整合

      (1)把action在spring中配置(action多实例)

    <bean id="UserAction" class="com.bookstore.action.UserAction" scope="prototype"></bean>
    prototype表示多实例,默认单实例

       (2)在struts.xml中action标签class属性里面写bean的id值(如果直接写全路径,action就会被创建两次)

    <action name="UserAction" class="UserAction">
    

    第六步:spring与hibernate整合(注意导包)

             (1)把hibernate核心配置文件中数据库配置在spring配置

    <!-- 配置c3p0连接池 -->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
    	<property name="driverClass" value="com.mysql.jdbc.Driver"></property>
    	<property name="jdbcUrl" value="jdbc:mysql:///bookstore"></property>
    	<property name="user" value="root"></property>
    	<property name="password" value="123456"></property>
    </bean>
    

         (2)把sessionFactory创建交给spring

    <!-- 把sessionFactory创建交给spring -->
    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    	<!-- 由于在hibernate核心文件中没有配置数据库,数据库在spring中配置,注入dataSource -->
    	<property name="dataSource" ref="dataSource"></property>
    	<!-- 指定hibernate核心文件 -->
    	<property name="comfigLocations" value="classpath:hibernate.cfg.xml"></property>
    </bean>
    

    第七步:配置事务(注解方式@Transactional)

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

    配置hibernateTemplate

    <!-- 配置hibernateTemplate -->
    <bean id="hibernateTemplate" classs="org.springframework.orm.hibernate3.HibernateTemplate">
    	<property name="sessionFactory" ref="sessionFactory"></property>
    </bean>
    

      

  • 相关阅读:
    解决任务计划程序未启动任务,因为相同任务的实例正在运行的问题
    推荐.Net、C# 逆向反编译四大工具利器
    The Win32 Rundll and Rundll32 Interface Related Topics
    delphi版本修改PE头源码
    排序算法总结
    Delphi XE中String、ANSIString、TBytes之间的转换
    得到WAV文件的长度
    在VC中使用SendInput函数实现中文的自动输入
    SendInput模拟键盘输入的问题
    delphi XE的字符串处理
  • 原文地址:https://www.cnblogs.com/durui/p/7647848.html
Copyright © 2011-2022 走看看