一、首先介绍要添加框架环境:

  • 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: 

  1. <!-- 配置struts2核心的过滤器 -->
  2. <filter>
  3. <filter-name>struts2</filter-name>
  4. <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  5. </filter>
  6.  
  7. <filter-mapping>
  8. <filter-name>struts2</filter-name>
  9. <url-pattern>/*</url-pattern>
  10. </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包下。

   编辑如下:

   

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE struts PUBLIC
  3. "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
  4. "http://struts.apache.org/dtds/struts-2.0.dtd">
  5.  
  6. <struts>
  7. <!-- 配置为开发模式,一旦文件改动,不需要重启,会立即生效 -->
  8. <constant name="struts.devMode" value="true" />
  9. <!-- 把扩展名设置为action -->
  10. <constant name="struts.action.extension" value="action" />
  11. <!-- 把主题配置为simple -->
  12. <constant name="struts.ui.theme" value="simple" />
  13. <package name="default" namespace="/" extends="struts-default">
  14. </package>
  15. </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包下,稍后进行编辑编辑。

 

  1. <?xml version='1.0' encoding='utf-8'?>
  2. <!DOCTYPE hibernate-configuration PUBLIC
  3. "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
  4. "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
  5. <hibernate-configuration>
  6. <session-factory>
  7. <!-- 1,数据库连接信息 -->
  8. <property name="dialect">
  9. org.hibernate.dialect.MySQL5InnoDBDialect
  10. </property>
  11. <!-- 2,其他配置 -->
  12. <property name="show_sql">true</property>
  13. <property name="hbm2ddl.auto">update</property>
  14. <!-- 3,导入映射文件 -->
  15. <mapping resource="cn/oa2014/oa/domain/User.hbm.xml" />
  16. <mapping resource="cn/oa2014/oa/domain/Role.hbm.xml" />
  17. <mapping resource="cn/oa2014/oa/domain/Department.hbm.xml" />
  18. <mapping resource="cn/oa2014/oa/domain/Privilege.hbm.xml" />
  19. </session-factory>
  20. </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>下,添加如下配置

  1. <!-- 配置测试用的action当与spring整合,class=bean的名称(如果bean没有指定value,则首写字母要小写)) -->
  2. <action name="test" class="testAction">
  3. <result name="success">/test.jsp</result>
  4. </action>

  3、在web.xml中配置Spring的监听器。

  

  1. <!-- 配置spring的用於初始化容器對象的监听器-->
  2. <listener>
  3. <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  4. </listener>
  5. <context-param>
  6. <param-name>contextConfigLocation</param-name>
  7. <param-value>classpath:applicationContext*.xml</param-value>
  8. </context-param>

  4、加一个整合的jar包。

  

 Spring与Struts2的整合成功了,只需要两步,一步是添加Spring的监听器,另一方面是添加整合的jar包。

  需要注意的是:要用@Controller注解标记对应表现层的Bean,也就是Action,就可把他交给Spring容器来管理了。具体的注意点上面已经说过了,很轻松就完成二者的整合了。

搭建SSH环境之添加所需jar包的更多相关文章

  1. 条理清晰的搭建SSH环境之添加所需jar包

    一.首先介绍要添加框架环境: JUnit Struts2 Hibernate Spring (1)配置JUnit /**-------------------------添加JUnit-------- ...

  2. SSH框架整合配置所需JAR包(SSH整合)

    转载于:http://www.cnblogs.com/kaige123/p/5719662.html Hibernate Jar: 1.hibernate3.jar,这个是hibernate3.0的核 ...

  3. 条理清晰的搭建SSH环境之整合Struts和Spring

    上文说到搭建SSH环境所需三大框架的jar包,本篇博客将通过修改配置文件整合Struts和Spring,下篇博客整合Hibernate和Spring即可完成环境搭建. 1.声明bean,新建TestA ...

  4. Mac下maven工程的创建,并搭建SSH环境

    最近项目有用到maven,就特地学了一下.maven的一句话攻略就是,项目托管.帮你解决各种项目琐事:清理,导包....等等. 首先先到apach官网去下载一个maven的包,http://maven ...

  5. Linux Ubuntu从零开始部署web环境及项目-----搭建ssh环境(一)

    linux搭建ssh环境 1,用户登录 成功输入用户名和密码后 进入Ubuntu界面  2,配置网络 参考:http://blog.csdn.net/liu782726344/article/deta ...

  6. springmvc 项目完整示例07 设置配置整合springmvc springmvc所需jar包springmvc web.xml文件配置

    前面主要是后台代码,spring以及mybatis的整合 下面主要是springmvc用来处理请求转发,展现层的处理 之前所有做到的,完成了后台,业务层和持久层的开发完成了 接下来就是展现层了 有很多 ...

  7. 02_MyBatis项目结构,所需jar包,ehcache.xml配置,log4j.properties,sqlMapConfig.xml配置,SqlMapGenerator.xml配置

     项目结构(所需jar包,配置文件) sqlMapConfig.xml的配置内容如下: <?xmlversion="1.0"encoding="UTF-8&qu ...

  8. 如何在Eclipse中添加Tomcat的jar包

    原文:如何在Eclipse中添加Tomcat的jar包 右键项目工程,点击Java Build Path 点击Add Library,选择Server Runtime 选择Tomcat版本 此时就看到 ...

  9. json所需jar包 & js解析后台json数据

    Json 所需jar包: var listxxx='<%=request.getAttribute("listxxx")%>';  // list数组 var mapx ...

随机推荐

  1. transform的2D部分,嗯…就这个标题了。

    上一次写了transition的内容,这次就写拼写很类似的另外一个属性transform好了……我英语差这件事就不要吐槽了,下面是正文,真的: transition是过渡,transform是变换. ...

  2. ASP.NET属性之AssociatedControlID

    AssociatedControlID 是用在Asp.Net 中的 Label 控件上.给label控件关联一个ASP.NET的控件,在点击 这个 LABEL的时候,所关联的ASP.NET控件会获得焦 ...

  3. Integer to Roman(JAVA)

    public String intToRoman(int num) { int[] values={1000,900,500,400,100,90,50,40,10,9,5,4,1}; String[ ...

  4. Matplotlib不显示图形

    安装好了Matplotlib,使用官方一个例子测试运行时,发现使用画图功能时,运行脚本老是显示不出图像,Google了一下,后来发现是matplotlibrc文件没配置好. 参考了官方文档,修改步骤如 ...

  5. Hadoop配置文件-hdfs-site.xml

     name  value Description  dfs.default.chunk.view.size 32768 namenode的http访问页面中针对每个文件的内容显示大小,通常无需设置. ...

  6. 【Android 错误记录】Conversion to Dalvik format failed with error 1 错误

    错误原因:依赖的包中有冲突,比如依赖了同一个jar包的不同版本等   在以往测试的过程中,出现过几次这个问题,根本原因都是因为有冲突了,但是表现形式可能不一样   情况1: 有一个叫DemoAPP的工 ...

  7. PHP截取汉字乱码问题解决方法mb_substr函数的应用

    首先 1.确保你的Windows/system32下有php_mbstring.dll这个文件,没有就从你Php安装目录extensions里拷入Windows/system32里面. 2.在wind ...

  8. 基本语法 - PHP手册笔记

    PHP标记 如果文件内容是纯PHP代码,最好在文件末尾删除PHP结束标记.这可以避免在PHP结束标记之后万一意外加入了空格或者换行符,会导致PHP开始输出这些空白,而脚本中此时并无输出的意图.当然PH ...

  9. python中的星号*、**的意义

    我们都知道,定义一个函数,当传入的参数个数未知时就可以使用*来表示. 单引号*: def test(*args): if len(args) >= 4: print(arg[3]) test(1 ...

  10. 串口调试工具(Python2.7+pyserial+Tkinter)

    需要与串口设备进行通讯,那么一个调试工具是必须的. 根据我自己的需要,写了个简易版本的串口调试工具: 预览图: ====================== 项目结构: COM --SerialHel ...