SSH(Struts+Spring+Hibernate)框架是最常用的框架之一,在搭建SSH框架的时候总有人遇到这样,那样的问题。以前一直用的是Struts+Hibernate做项目,今天第一次搭建SSH环境,也遇到了很多问题,下面我介绍一下SSH框架搭建的全过程,以供后面学习的人少走点弯路,照我的做法一步一步的做就没有什么问题了。

第一步:准备工作:Eclspe的安装以及安装Hibernate、Spring插件在这里我就不多讲了,最简单的方式是在Eclspe的Help菜单中有个Eclspe Maketplace菜单项,点击进去就可以看到Spring、JBoss之类的Makets,单Install就会安装了,只要安提示来就好了。下载好Struts、Spring、Hibernate,目前最新的应该是Struts2.3.7、Spring3.1.2、Hibernate4.2.0,后面我也会将里面jar的包上传到资源库中,大家方便下。

第二步:项目配置

1、新建Web项目,名字自己取 如:FirstSSHDemo

2、在WebContent/WEB-INF目录下创建或修改(如果系统自动创建好的)web.xml文件,增加Struts2拦截器,如下代码:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  4. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  5. id="WebApp_ID" version="2.5">
  6. <!-- struts2 -->
  7. <filter>
  8. <filter-name>struts2</filter-name>
  9. <filter-class>
  10. org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  11. </filter>
  12. <filter-mapping>
  13. <filter-name>struts2</filter-name>
  14. <url-pattern>/*</url-pattern>
  15. </filter-mapping>
  16. </web-app>

3、在Java Resources/src目录下建立Struts的配置文件struts.xml 内容如下:

  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. <struts>
  6. <package namespace="/" name="ecshop_pro" extends="struts-default">
  7. <!-- action根据自己的需求来配置 -->
  8. <action name="index" >
  9. <result name="input">index.jsp</result>
  10. </action>
  11. </package>
  12. <!-- 以下是我自己工程的东西搭环境时将include这些全部删除,预留下的意思是希望大家以后这样来配置,每个功能模块一个xml配置,然后将其include进来就好了  -->
  13. <include file="front.xml" />
  14. <include file="login.xml" />
  15. <include file="user.xml" />
  16. <include file="goods.xml" />
  17. <include file="order.xml" />
  18. <include file="article.xml" />
  19. <include file="shopping.xml" />
  20. </struts>

4、配置Spring环境,在这里我们先讲配置文件的写法,后面统一的引入三个框架所需要的Jar包。我们在前面的web.xml中增加Spring的监听器,代码如下

  1. <!-- Spring Framework 说明一下:我这里是将applicationContext.xml放在/WEB-INF目录中,所以<param-value>是这种写法 如果把它放在Java Resources/src 下 将/WEB-INF改成classpath:即可 -->
  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>/WEB-INF/applicationContext.xml</param-value>
  8. </context-param>

5、在第四步中我们已经看到了applicationContext.xml,这个就是Spring的配置文件了,

在WebContent/WEB-INF目录下创applicationContext.xml文件,在关于具体的详细配置说明可以去官网查看,

这里只是带大家搭建下开发环境,代码如下

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans  xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
  4. xmlns:tx="http://www.springframework.org/schema/tx"
  5. xsi:schemaLocation="
  6. http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
  7. http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
  8. http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">
  9. <!-- Action 我这里配置了一个后台登陆的Action Bean 这里需要注意一下scope这个属性,
  10. 它有两个值:prototype和singleton,在使用prototype值是没有什么需注意的,
  11. 使用singleton时如果配置property,那么需要注意的是property 的name的值必须是Action中需要依赖注入的那个
  12. 变量,也就是指向Bo或Dao或Service层相应实现类的变量;ref指定了属性对BeanFactory中其他Bean的引用关系,
  13. 必须为其他Bean的id -->
  14. <bean id="loginAction" scope="prototype" class="com.ecshop.action.LoginAction">
  15. <property name="IAdminDao" ref="ado"></property>
  16. </bean>
  17. <!-- Dao -->
  18. <!-- id为Action中的变量 -->
  19. <bean id="ado" class="com.ecshop.dao.impl.HAdminDao"></bean>
  20. <!-- sessionFactory -->
  21. <bean id="sessionFactory"
  22. class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
  23. <property name="configLocation">
  24. <value>classpath:/hibernate.cfg.xml</value>
  25. <!-- 这里注意一下上面的value标签内的值,这是配置Hibernate配置文件的地址和文件名, 我的hibernate.cfg.xml
  26. 是放在Java Resouses/src根目录中所以这样写,如果只写hibernate.cfg.xml 会报BeanCreationException和FileNotFondException -->
  27. </property>
  28. </bean>
  29. </beans>

6、在Java Resouses/src根目录建立Hibernate配置文件hibernate.cfg.xml,代码结构如下:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!DOCTYPE hibernate-configuration PUBLIC
  3. "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
  4. "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
  5. <hibernate-configuration>
  6. <session-factory>
  7. <!--  我使用的是MySQL数据库所以我的drive_class就是MySQL的驱动类别,相应的url、password、username、dialect大家根据自己的项目需求更改就好了 -->
  8. <property name="hibernate.bytecode.use_reflection_optimizer">false</property>
  9. <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
  10. <property name="hibernate.connection.password">lossie</property>
  11. <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/ecshop</property>
  12. <property name="hibernate.connection.username">root</property>
  13. <property name="hibernate.current_session_context_class">thread</property>
  14. <!-- SQL dialect 方言,其他数据库的可查Hibernate文档中的Hibernate数据库方言 -->
  15. <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
  16. <!-- 格式化输出SQL -->
  17. <property name="hibernate.format_sql">true</property>
  18. <!-- show_sql 生成SQL语句 -->
  19. <property name="show_sql">false</property>
  20. <property name="hibernate.search.autoregister_listeners">false</property>
  21. <!--  下面是包含javaBean与数据库表的映射文件 -->
  22. <mapping resource="com/ecshop/vo/EcsAdminUser.hbm.xml" />
  23. </session-factory>
  24. </hibernate-configuration>

第三步:将SSH要使用的jar包引入工程中的WEB-INF/lib目录中,然后将项目加入到Tomcat中启动运行看控制台是否有错误产生,如果没有错误即环境搭建完成

Struts依赖的包(包括了Spring需要使用的公用包):

Spring依赖的包(必须的这几个):

Hibernate所依赖的包:

转载于:https://blog.51cto.com/mrwlh/1084623

SSH Web工程环境搭建总结相关推荐

  1. [Java] Web开发环境搭建 - MyEclipse 篇

    Web开发环境搭建 - MyEclipse 篇 在前面,我们讲了使用 Eclipse Java EE 来搭建 Java Web 应用程序开发环境. 现在来说下比较流行的 MyEclipse 又是如何搭 ...

  2. eclipse中SSH三大框架环境搭建二

    通过上一篇博客我们可以轻松搭建strtus2的环境,接下来由我来继续介绍spring的环境搭建以及spring注入的简单使用 相关链接:eclipse中SSH三大k框架环境搭建<一> ec ...

  3. Spring+Dubbo+MyBatis+Linner分布式Web开发环境搭建

            Spring+Dubbo+MyBatis+Linner分布式Web开发环境搭建               本文承接我之前的博客<Spring+Maven+Dubbo+MyBat ...

  4. Spring+Maven+Dubbo+MyBatis+Linner+Handlebars—Web开发环境搭建

    Spring+Maven+Dubbo+MyBatis+Linner+Handlebars                                         --Web开发环境搭建 本文主 ...

  5. 《Node.js入门》Windows 7下Node.js Web开发环境搭建笔记

    最近想尝试一下在IBM Bluemix上使用Node.js创建Web应用程序,所以需要在本地搭建Node.js Web的开发测试环境. 这里讲的是Windows下的搭建方法,使用CentOS 的小伙伴 ...

  6. Debian6 / 7 Web服务器环境搭建LNMP一键安装包 | 问题汇总与解答

    Debian6 / 7 Web服务器环境搭建LNMP一键安装包 | 问题汇总与解答 欢迎使用中遇到什么问题,在此专篇提问,一定有问必答. 转载于:https://blog.51cto.com/jimm ...

  7. CUDA+VS2017+win环境下 cuda工程环境搭建(解决标识符未定义或申明)

    CUDA+VS2017+win环境下 cuda工程环境搭建 引言 前提准备(CUDA和VS的安装) Visual Studio 配置 测试 Reference 引言 在学习CUDA并行计算原理时,在V ...

  8. NLB+WEB服务器环境搭建

    NLB+WEB服务器环境搭建 环境准备 本环境涉及5台PC,均使用双网卡,一块网卡用来登录管理,另一块网卡用于内网实验 PC:用来测试访问NLB环境下WEB服务器是否可用,内网ip 192.168.8 ...

  9. 阿里云服务器搭建python web环境_《Python入门》Linux 下 Python Web开发环境搭建笔记-阿里云开发者社区...

    之前写过 Windows 7下Python Web开发环境搭建笔记,今天写一下在Linux系统下搭建Python Web的开发测试环境. 我使用的系统是:ubuntu 14.04 server,根据个 ...

最新文章

  1. Python 3.8即将发布,这几个变化你必须知道
  2. 从程序员到项目经理(20):让员工为目标而干活
  3. 新网站如何在最短的时间内提升排名呢?
  4. Golang slice原理
  5. 16进制可逆加密算法
  6. ruby array_Ruby中带有示例的Array.fill()方法(3)
  7. 帮你找到了几份非公开的大数据报告,错过再无,手慢的人抓紧
  8. LeetCode刷题开源手册
  9. sessionStorage跨标签取值
  10. 使用晨曦记账本记账,将账目明细导出excel表格上
  11. IT讲师韩顺平:我为什么辞去百万年薪,自己创业?
  12. 什么是控制台应用程序
  13. 网吧无盘服务器进u盘启动,利用U盘启动在网吧免费上网
  14. matlab日历制作
  15. 【自然语言处理】【聚类】DCSC:利用基于对比学习的半监督聚类算法进行意图挖掘
  16. OSPF--DR与BDR
  17. R语言实现结构方程模型
  18. 平板触控笔哪些品牌好?ipad触控笔推荐平价
  19. plsql 英文版 修改字体,工具栏大小
  20. php必须是汉字的 正则,php汉字正则表达式

热门文章

  1. springCloud入门学习(七):通过属性自定义Ribbon配置
  2. Linux 使用NC命令永久监听本地端口
  3. RH134 UNIT5
  4. 软考之路(1)——浅解网络基础知识
  5. 使用 jetty-maven-plugin发布maven项目
  6. SQL Server 2008杀数据库连接
  7. SQL server 小笔记
  8. 为jQuery的$.ajax设置超时时间
  9. 在tomcat下创建和发布WEB应用
  10. ORACLE建视图 授权的 例子