SSH框架是最常用的框架之一,在搭建SSH框架的时候总有人遇到这样,那样的问题。下面我介绍一下SSH框架搭建的全过程。 

第一步:准备工作。 

  下载好eclipse,Struts2,Spring,Hibernate。 

  1.eclipse:eclipse下载的时候建议下载JavaEE版的eclipse。

                 当然你也可以下载eclipse-SDK。(下载eclipse-SDK需要下载Web,Tomcat等plugins) 

  2.Struts2:http://struts.apache.org/download 

         1)引入Struts的jar包。下载 struts-*-all.zip 解压后,struts/lib目录下是struts所有的相关jar包。 

         其中有5个是必须的:

Commons-logging-1.0.4.jar,Freemarker-2.3.13.jar, 

               Ognl-2.6.11.jar,Struts2-core-2.1.6.jar,Xwork-2.1.2.jar 

         其余jar包并不是struts必须的。还有3个包也要注意导入。不导入运行Tomcat时候可能会出现异常。 

               commons-io-1.3.2.jar,commons-fileupload-1.2.1.jar,javassist-3.7.ga.jar 

         注意:javassist-3.7.ga.jar包是在struts2-blank-2.2.1.war示例工程中的web-inf/lib下的。

3.Spring:http://www.springsource.com/download/community 

        还可以在eclipse下安装下载。具体步骤是这样的:

        1)打开eclipse-help-Software Updates.

2) 在打开的对话框中选择上面的第二项(Available Software)。

3)点击Add Site按钮,弹出URL对话框。

4)在对话框里输入:http://springide.org/updatesite/点击OK。

5)选择sping IDE点击安装(Install)。

4.Hibernate:http://sourceforge.net/projects/hibernate/files/hibernate3/ 



  5.Jdk的src.zip包导入。(当然不导入也可以。。。) 



第二步: 



  1.创建一个 Web Progect,自己起一个喜欢的名字。 



  2.修改WEB-INF下的web.xml文件,增加struts2的配置。

Xml代码 
  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. <display-name>SSHTest</display-name>
  7. <!-- struts Framework -->
  8. <filter>
  9. <filter-name>struts2</filter-name>
  10. <filter-class>
  11. org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
  12. </filter-class>
  13. </filter>
  14. <filter-mapping>
  15. <filter-name>struts2</filter-name>
  16. <url-pattern>/*</url-pattern>
  17. </filter-mapping>
  18. <!-- welcome file -->
  19. <welcome-file-list>
  20. <welcome-file>index.jsp</welcome-file>
  21. </welcome-file-list>
  22. </web-app>

3.在WEB-INF/classes目录下添加struts.xml配置文件:

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="struts2" extends="struts-default">
  7. <action name="login" method="execute" class="loginAction">
  8. <result name="success">/WEB-INF/jsp/login.jsp</result>
  9. <result name="input">/WEB-INF/index.jsp</result>
  10. </action>
  11. </package>
  12. </struts>

4.配置Spring 



    1)导入spring包。spring-framework-**.zip解压后,将spring-framework-**文件夹的dist目录下的jar包导入工程中。

2)配置web.xml文件。

Xml代码 
  1. <!-- Spring Framework -->
  2. <listener>
  3. <listener-class>
  4. org.springframework.web.context.ContextLoaderListener
  5. </listener-class>
  6. </listener>
  7. <context-param>
  8. <param-name>contextConfigLocation</param-name>
  9. <param-value>
  10. classpath:/applicationContext*.xml
  11. </param-value>
  12. </context-param>

3)添加applicationContext.xml文件。

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"
  4. xmlns:aop="http://www.springframework.org/schema/aop"
  5. xmlns:tx="http://www.springframework.org/schema/tx"
  6. xsi:schemaLocation="
  7. http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
  8. http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
  9. http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">
  10. <!-- Action -->
  11. <bean id="loginAction" scope="prototype" class="action.LoginAction"></bean>
  12. </beans>

4)整合Spring与Struts。在Struts的lib目录中找到struts2-spring-plugin-*.jar,引入到工程中。 





  5.配置Hibernate 



        1)解压缩hibernate-distribution-*.zip。导入hibernate-distribution-*GA/lib/required目录中的jar包。 



                hibernate3.jar                         核心类库 

                antlr-2.7.6.jar                          代码扫描器,用来翻译HQL语句 

                commons-collections-3.1.jar    Apache Commons包中的一个,包含了一些Apache开发的集合类, 



                                                                功能比java.util.*强大 

                dom4j-1.6.1.jar                        一个Java的XML API,类似于jdom,用来读写XML文件的 

                javassist-3.4.GA.jar                 Javassist 字节码解释器 

                jta-1.1.jar                                标准的JTA API。 

                slf4j-api-1.5.2.jar 

                slf4j-nop-1.5.2.jar 





        2)创建Hibernate配置文件。在WEB-INF/calsses目录下建立链接数据库的配置文件hibernate.cfg.xml。 

            (本人比较懒,公司电脑中只有Access,也懒得下载别的DBMS。所以例子是连接Access的大家将就看吧。 

            *注意:需要导入Access_JDBC30.jar。 

   hibernate.cfg.xml:

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. <property name="connection.driver_class">
  8. com.hxtt.sql.access.AccessDriver
  9. </property>
  10. <property name="connection.url">
  11. jdbc:access:///D:/workspace/SSHTest/TestDatabase.accdb
  12. </property>
  13. <!--  数据库连接设置 -->
  14. <property name="eclipse.connection.profile">access</property>
  15. <property name="connection.username"></property>
  16. <property name="connection.password"></property>
  17. <property name="dialect">com.hxtt.support.hibernate.HxttAccessDialect</property>
  18. <!-- show_sql 生成SQL语句 -->
  19. <property name="show_sql">true</property>
  20. <!-- SQL dialect 方言 -->
  21. <property name="hibernate.dialect">
  22. com.hxtt.support.hibernate.HxttAccessDialect
  23. </property>
  24. <!-- 添加实体类的映射文件-->
  25. <mapping resource="Login.hbm.xml" />
  26. <!-- Annotation方式配置
  27. <mapping class="entity.Login"/>
  28. -->
  29. </session-factory>
  30. </hibernate-configuration>

注意:单独使用Hibernate需要创建Session工厂类HibernateSessionFactory.java 

                     (如果用Spring整合就不需要了。Spring会在applicationContext.xml中创建。) 

                      Hibernat 对数据库的操作是通过Session来实现的,这里的session不同于页面间传递参数的session, 

                      而是类似于JDBC中的 Connection。Session是Hibernate运作的中心, 

                      对象的生命周期、事务的管理、数据库的存取都与session息息相关。 

                      而Session是由HibernateSessionFactory创建的,是线程安全的, 

                      可以让多个执行线程同时存取HibernateSessionFactory而不会有数据共享的问题, 

                      但不能让多个线程共享一个Session。 



       3)Login.hbm.xml文件

Xml代码 
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE hibernate-mapping PUBLIC
  3. "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
  4. "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >
  5. <hibernate-mapping package="包名">
  6. <class name="类名" table="表名">
  7. <id name="主键在java类中的字段名" column="对应表中字段" type="类型 ">
  8. <generator class="主键生成策略"/>
  9. </id>
  10. </class>
  11. </hibernate-mapping>

6.Spring整合Hibernate。Spring对hibernate的Session的创建、提交、关闭的整个生命周期进行管理。 

        1)  配置sessionFactory,让spring来创建Session。在applicationContext.xml中增加如下代码:

Xml代码 
  1. <!-- sessionFactory -->
  2. <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
  3. <property name="configLocation">
  4. <value>classpath:/hibernate.cfg.xml</value>
  5. </property>
  6. </bean>

eclipse搭建ssh后台的更多相关文章

  1. Eclipse搭建SSH(Struts2+Spring+Hibernate)框架教程

    | 版权声明:本文为博主原创文章,未经博主允许不得转载. 前言 确实,刚创博客,对于这个陌生的东西还是有些许淡然.这是我的第一篇博文,希望能给你们有帮助,这就是我最大的乐趣! 好了下面进入正题: SS ...

  2. Java之基于Eclipse搭建SSH框架(下)

    在上篇博客里,我简介了Tomcat滴配置与Struts2滴搭建,假设对这个还不会滴童鞋去看一下我滴上篇博客<Java之基于Eclipse搭建SSH框架(上)>.今天我们接着上篇博客滴内容. ...

  3. 用eclipse搭建SSH(struts+spring+hibernate)框架

    声明: 本文是个人对ssh框架的学习.理解而编辑出来的,可能有不足之处,请大家谅解,但希望能帮助到大家,一起探讨,一起学习! Struts + Spring + Hibernate三者各自的特点都是什 ...

  4. 转载:eclipse 搭建SSH项目(第一篇)

    第一篇:原文地址:http://blog.csdn.net/aaaaaaaa0705/article/details/6288431(虽然没有具体的例子,不过逻辑性强点,比较容易看懂) SSH框架是最 ...

  5. 用Eclipse搭建ssh框架

    问:ssh是哪三大框架,以及他们的作用是什么? 答:分别是struts,spring,hibernate. struts的作用是:是web层,其核心是mvc模式,他可以自动获取参数,自动类型转换,自动 ...

  6. SSH项目整合教学Eclipse搭建SSH(Struts2+Spring3+Hibernate3)

    这篇博文的目的 尝试搭建一个完整的SSH框架项目. 给以后的自己,也给别人一个参考. 读博文前应该注意: 本文提纲:本文通过一个用户注册的实例讲解SSH的整合.创建Struts项目,整合Hiberna ...

  7. Eclipse搭建SSH框架(Struts2+Spring+Hibernate)

    见识少的我经过一天多的研究才知道,在MyEclipse中搭好的框架的配置文件和jar包是通用的.接下来——亮剑! 工具:Eclipse+Tomcat+Mysql 一.先在Eclipse中配置好Tomc ...

  8. 转载:eclipse 搭建SSH项目(第二篇,有具体的项目例子)

    原文地址:http://blog.csdn.net/yeohcooller/article/details/9316923 读博文前应该注意: 本文提纲:本文通过一个用户注册的实例讲解SSH的整合.创 ...

  9. 自练Eclipse搭建SSH全自动注解博客项目笔记

    1.创建一个动态的java项目 2.导入搭建所需要的jar包 3.配置web.xml文件 1).头文件 2).struts2的拦截器 3).定位加载Spring容器的配置文件 4).监听 5). 6) ...

随机推荐

  1. Rails 4.0 bundle exec rspec spec/requests/xxx 测试失败的解决

    rails项目没有使用默认的单元测试包,而是使用了rspec-rails来测试. 按照文档说明首先生成对应的测试文件: rails generate integration_test xxx invo ...

  2. Swift3的playground中对UI直接测试支持的改变

    我们知道在Xcode的playground中不仅可以测试console代码,还可以测试UI代码,甚至我们可以测试SpriteKit中的场景,有兴趣的童鞋可以看我之前写的这一篇blog: Xcode的p ...

  3. Java中的泛型类和泛型方法区别和联系

    泛型的概念大家应该都会,不懂的百度或者google,在java中泛型类的定义较为简单 <span style="font-size:18px;"><span st ...

  4. ERROR: In <declare-styleable> MenuView, unable to find attribute android:preserveIconSpacing

    eclipse  sdk从低版本切换到高版本sdk的时候   v7包会包这个错ERROR: In <declare-styleable> MenuView, unable to find ...

  5. UE4实现闪烁效果

    官网文档链接:http://docs.unrealengine.com/latest/CHN/Engine/Rendering/Materials/ExpressionReference/Math/i ...

  6. everything of people’s life can changed in their twenties

    还记得三年前,独自背着行李,流浪远方,来到曾经只在地理课本上才熟悉的北国,带着好奇,带着期望,带着激动的心情,想感受毛爷爷当年霸气的北国风光,千里冰封的美丽,想知道北方的面条到底有多少种花样,想走进那 ...

  7. 2.Lucene3.6.2包介绍,第一个Lucene案例介绍,查看索引信息的工具lukeall介绍,Luke查看的索引库内容,索引查找过程

     1  Lucen目录介绍 2  lucene-core-3.6.2.jar是lucene开发核心jar包 contrib  目录存放,包含一些扩展jar包 3  案例 建立第一个Lucene项目 ...

  8. javascript之正则表达式

    创建正则表达式的两种方法 显式: new RegExp("pattern"[,"flags"]); 例 var regex = new ("abc&q ...

  9. Spark技术内幕:Master的故障恢复

    Spark技术内幕:Master基于ZooKeeper的High Availability(HA)源码实现  详细阐述了使用ZK实现的Master的HA,那么Master是如何快速故障恢复的呢? 处于 ...

  10. 百度地图隐藏缩放控件比例尺Logo

    对于百度地图最新版V3.7.3,以前的隐藏控件方法失效,可用以下方法隐藏: 1.隐藏缩放控件: mMapView.showZoomControls(false); 2.隐藏比例尺: mMapView. ...