近日为了回顾SSH知识,特意自己全手动试着搭建搭建了一个SSH项目(已有两个月没动手写代码了),竟然花费了两天时间,甚是汗颜,羞愧难当,以此文记录以便以后回顾.
       回顾全过程,无非是导包,写配置文件,修改配置文件,写测试类的循环操作。 大致步骤如下:
首先自然是创建一个web项目,名称SSH
   1.添加Spring支持:
       1.1导包:spring.jar;    commons-loggin.jar;
       1.2添加配置文件applicationContext.xml
       1.3修改web.xml:
<context-param>

<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/classes/applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
                   </listener>
     /**  测试Spring是否添加成功 : 创建一个DTO(/类),在applicationContext.xml中对类中的属性直接赋值  再写个包含main方法的测试                                      通过XmlBeanFactory读取applicationContext.xml。
    */
2.添加Struct2支持
       2.1导包:struct2-core.jar;    xwork-core.jar;    freemarker.jar;    ognl.jar;    struct2-spring-plugin.jar;
       2.2 修改web.xml:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
                       <url-pattern>/*</url-pattern>
</filter-mapping>
       2.3添加配置文件:struts.xml:
<package name="a" extends="struts-default">
<action name="ActionName1" class="对应Action类的路径">
<result name="success">/success.jsp</result>
</action>
</package>
       2.4修改配置文件applicationContext.xml ( 用依赖注入的方式产生action实例:)

<bean id="ActionName1" class="对应Action类的路径/ 通过依赖注入生成的对象的名字">
<property name="" value=""></property>
</bean>
 ************************************  此处的2.3和2.4两处操作有两种方式          代码如下:********************************************************
            applicationContext.xml文件内容:                        
Spring,Struts2,Hibernate简单搭建_ssh
                   struts.xml文件内容:
Spring,Struts2,Hibernate简单搭建_sping_02
*****注意:
对于personAction中的变量  用这两种方式的差异
private PersonDAO personDao;   方式一    byType方式注入
//private PersonDAO dao;    方式二            byName方式注入

最后web.xml内容:
Spring,Struts2,Hibernate简单搭建_sping_03
*****************************************************************************************************************************************************************
3.添加Hibernate支持:
       3.1导包(至少12个):
  hibernate3.jar;    dom4j.jar;    commons-collections.jar;    slf4j-api.jar    slf4j-logej.jar;    log4j.jar;    antlr.jar;
               hibernate-annotations.jar;    hibernate-commons-annotations.jar;    jta.jar;    ejb3-persistence.jar;    javassist.jar;
       3.2添加核心配置文件
                           hibernate.cfg.xml;

       3.3在Spring里面配置hibernate
  <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation" value="classpath:hibernate.cfg.xml"></property>
</bean>
       3.4写通用的
DAO接口
        3.5添加对应表的实体类和映射文件  DTO   ,    xxx.hbm.xml;
       3.6将实体类的映射文件添加到hibernate的核心配置文件中:            例:
<mapping resource="DTO/Person.hbm.xml"/>
       3.7为各实体类实现DAO
person.hbm.xml内容:
<hibernate-mapping>
<class name="DTO.Person"  table="Person">
<id name="id" column="id" type="java.lang.Integer">
</id>
<property name="name" column="name" type="java.lang.String"></property>
<property name="age" column="age" type="java.lang.Integer"></property>
</class>
</hibernate-mapping>
Hibernamte.cfg.xml内容
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>
<property name="connection.url">jdbc:sqlserver://localhost:1433;databaseName=Test</property>
<property name="connection.username">sa</property>
<property name="connection.password">911726</property>

//数据库方言  由此hibernate知道使用的是哪种数据库
<property name="dialect">org.hibernate.dialect.SQLServerDialect</property>          
<property name="show_sql">true</property>
 <property name="format_sql">true</property>
<mapping resource="DTO/Person.hbm.xml"/>
</session-factory>
</hibernate-configuration>