搭建SSH環境之添加所需jar包


一、首先介紹要添加框架環境:

  • JUnit
  • Struts2
  • Hibernate
  • Spring

(1)配置JUnit

  /**-------------------------添加JUnit-------------------------------*/

  右擊Web項目--->Build Path--->Add Libraries--->在“Add Libraries窗口選擇Junit”---

  --->Next--->選擇版本JUnit 4

  /**-------------------------完成JUnit!------------------------------*/

(2)Struts2

  • 添加Jar
  • struts.xml
  • web.xml 

  /**-------------------------添加Struts-------------------------------*/

  1、添加Jar,將路徑struts-2.3.16-all\struts-2.3.16\apps\struts2-blank\WEB-INF\lib下的所有Jar拷貝到項目 WEB-INF下的lib下。

  

  2、拷貝並編輯web.xml,將路徑struts-2.3.16-all\struts-2.3.16\apps\struts2-blank\WEB-INF下的web.xml中配置Struts2核心的過濾器的代碼拷貝到項目WEB-INF的web.xml下:

  編輯web.xml: 

復制代碼
   <!-- 配置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>
復制代碼

 

 

 

  3、拷貝並編輯Struts.xml,首先在項目下新建一個命名為config的Source Folder包用來存放配置文件。

   將路徑struts-2.3.16-all\struts-2.3.16\apps\struts2-blank\WEB-INF\src\java下的struts.xml文件拷貝到config包下。

   編輯如下:

   

復制代碼
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
    <!-- 配置為開發模式,一旦文件改動,不需要重啟,會立即生效 -->
    <constant name="struts.devMode" value="true" />
    <!-- 把擴展名設置為action -->
    <constant name="struts.action.extension" value="action" />
    <!-- 把主題配置為simple -->
    <constant name="struts.ui.theme" value="simple" />
   <package name="default" namespace="/" extends="struts-default">
    </package>
</struts>
復制代碼

 

 

 

  /**-------------------------完成Struts!-------------------------------*/

(3)Hibernate

  • 添加Jar包
  • 主配置文件Hibernate.cfg.xml
  • 映射文件*.hbm.xml

 /**-------------------------添加Hibernate-------------------------------*/

  1、 添加jar包:

    添加核心包:路徑hibernate-distribution-3.6.0.Final下的hibernate3.jar. 

     

    添加必須包:路徑hibernate-distribution-3.6.0.Final\lib\required下的所有jar

    

    添加jpa包:路徑hibernate-distribution-3.6.0.Final\lib\jpa下的所有jar

    

    添加可選包:路徑hibernate-distribution-3.6.0.Final\lib\optional\c3p0下的所有包:

    

    添加JDBC驅動包:

    

 2、拷貝並配置文件hibernate.cfg.xml

  搜索並拷貝hibernate-distribution-3.6.0.Final下的hibernate.cfg.xml文件和log4j.properties文件,放到項目config包下,稍后進行編輯編輯。

 

復制代碼
<?xml version='1.0' encoding='utf-8'?>
<!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>
    <!-- 1,數據庫連接信息 -->
    <property name="dialect">
        org.hibernate.dialect.MySQL5InnoDBDialect
    </property>
    <!-- 2,其他配置 -->
    <property name="show_sql">true</property>
    <property name="hbm2ddl.auto">update</property>
    <!-- 3,導入映射文件 -->
    <mapping resource="cn/oa2014/oa/domain/User.hbm.xml" />
    <mapping resource="cn/oa2014/oa/domain/Role.hbm.xml" />
    <mapping resource="cn/oa2014/oa/domain/Department.hbm.xml" />
    <mapping resource="cn/oa2014/oa/domain/Privilege.hbm.xml" />
</session-factory>
</hibernate-configuration>
復制代碼

 

 

 3、拷貝並配置映射文件*.hbm.xml

  搜索並拷貝hibernate-distribution-3.6.0.Final下的某*.hbm.xml文件,放到domain包下,稍后進行編輯。

 /**-------------------------完成Hibernate!-------------------------------*/

(4)Spring

  • 添加jar包
  • 配置文件applicationContext.xml

/**-------------------------添加Spring-------------------------------*/

  1、添加jar:

   拷貝核心jar包,路徑spring-framework-2.5.6.SEC01\dist下的spring.jar。

   路徑spring-framework-2.5.6.SEC01\lib\aspectj下的所有jar包:

    

  路徑spring-framework-2.5.6.SEC01\lib\cglib下的jar包

  

  路徑spring-framework-2.5.6.SEC01\lib\jakarta-commons下的jar包

  

  2、配置文件,稍后整合時再說。

/**-------------------------完成Spring!配置文件稍后說-------------------------------*/

 

   最后展示OA項目需要的所有jar包:

  

  光導入這些jar包還是不足夠整合SSH的,下面通過Struts2和Spring的整合,Hibernate和Spring的整合來完成SSH環境的搭建。

 

    上文說到搭建SSH環境所需三大框架的jar包,本篇博客將通過修改配置文件整合Struts和Spring,下篇博客整合Hibernate和Spring即可完成環境搭建。

  1、聲明bean,新建TestAction.java,需要給類添加注解:@Controller 和 @Scope("prototype");

   “使用@Controller注解標識TestAction之后,就表示要把TestAction交給Spring容器管理,在Spring容器中會存在一個名字為"testAction"的action,這個名字是根據TestAction類名來取的。

   注意:如果@Controller不指定其value【@Controller】,則默認的bean名字為這個類的類名首字母小寫,如果指定value【@Controller(value="TestAction")】或者【@Controller("TestAction")】,則使用value作為bean的名字。

  使用@Scope注解,@Scope("prototype")表示將Action的范圍聲明為原型,可以利用容器的scope="prototype"來保證每一個請求有一個單獨的Action來處理,避免struts中Action的線程安全問題。spring 默認scope 是單例模式(scope="singleton"),這樣只會創建一個Action對象,每次訪問都是同一Action對象,數據不安全,struts2 是要求每次次訪問都對應不同的Action,scope="prototype" 可以保證當有請求的時候都創建一個Action對象。”

  2、添加Struts.xml內容,  在<package>下,添加如下配置

 

        <!-- 配置測試用的action當與spring整合,class=bean的名稱(如果bean沒有指定value,則首寫字母要小寫))  -->
        <action name="test" class="testAction">
            <result name="success">/test.jsp</result>
        </action>

 

  3、在web.xml中配置Spring的監聽器。

  

復制代碼
    <!-- 配置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>
復制代碼

 

  4、加一個整合的jar包。

  

  Spring與Struts2的整合成功了,只需要兩步,一步是添加Spring的監聽器,另一方面是添加整合的jar包。

  需要注意的是:要用@Controller注解標記對應表現層的Bean,也就是Action,就可把他交給Spring容器來管理了。具體的注意點上面已經說過了,很輕松就完成二者的整合了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM