当前位置: 代码迷 >> Eclipse >> eclipse筹建ssh
  详细解决方案

eclipse筹建ssh

热度:98   发布时间:2016-04-23 02:22:12.0
eclipse搭建ssh
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.           
27.        <!-- Annotation方式配置 
28.        <mapping class="entity.Login"/> 
29.         --> 
30.    </session-factory> 
31.</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> 

  相关解决方案