搭建SSH框架(自己做项目时的总结)

搭建SSH框架:Struts1.* + Spring2.5 + Hibernate3.0

一,    项目结构:

(1)

Jsp页面省略,主要是一些添删改查的页面;

二,    开始搭建项目环境,步骤如下:

使用平台:MyEclipse6.0/6.5

框架版本:Struts1.* + Spring2.5 + Hibernate3.0

 

1,添加过程:

1>新建项目: 打开MyEclipse,Package Explorer视图下,右键单击 New -> Web Project

 

 

   注意:在新建项目时,JDK的版本最好要选择Java EE 5.0;因为版本过低,可能有些JSP方面的功能不支持;

   (2)

 

   新建玩项目之后,把该导的包导入到 (3)

下面,下图为SS H框架所需要的Jar包,注意,该项目用的是ORACLE数据库;

(4)

 

其中,activation mail这两个包为Java发邮件的包;classes12Oracle数据库的驱动包,如果不是Oracle数据库,可更换该Jar;dweAjax dwr框架中的包;

2>,接着就开始用MyEclipse辅助开发Struts,Spring,Hibernate;

3>,首先MyEclipse辅助开发Struts,方法:右键单击你所建的项目,出现一级菜单,选择Myeclipse,选择Myeclipse之后会出现二级菜单,接着选择Add  Struts apabilities;;接着具体操作如下面图示:

 

(5)

 

 

    点击Finish按钮完成;完成之后,可将 (6)

 

包删除;在上图中,如果那个勾没有去掉的话,就会自动生产如下标签:当然,如果你觉得标签对你没什么用的话,可以删除;

(7)

 

如果该勾去掉的话,就只生成(8)

 标签,这是Struts的核心标签;

           4>,MyEclipse辅助开发Spring,方法跟上面的一样,选择Add  Spring  apabilities;;接着具体操作如下面图示:(9)

然后点击Next,具体操作如下图:(10)

 

接着点击 Finish按钮,完成此项操作;

5>,,最后MyEclipse辅助开发Hibernate,在执行和上面类似方法之前,Hibernate需要先做另外一件事情,那就是和数据建立连接,具体操作如下图:

 点击(11)

 

上图位置的 或者右边的>> ,然后再选择MyEclipse Database Explorer切换到如下图页面: (12),然后右键单击,新建一个Database Driver;如下图:(13)

下面这个截图是该项目的数据库链接图:

(14)

如图所示,测试数据库链接成功;然后可直接点击Finish完成;

接着切换到 (15) 窗口,按照上面第三小步的方法,选择Add  Hibernate  apabilities;;接着具体操作如下面图示:

 

(16)

点击 下一步:(17)

点击 下一步:(18)

点击 下一步:

点击 下一步:

(19)

点击 Finish 完成;

6>,最后一步,就是运用Hibernate的映射机制,把数据库的表与JAVA的对形成一个关系映射;在此之前,首先应该在项目SRC的目录下面新建一个包,如该项目所示,用来存放映射生成的POJO对象以及映射文件;如下图:(20)

有一点说一下,你生成的*.hbm.xml文件可能不止一个,对,你可以把它们整合到一个文件中;然后新建按第五小步的方法,把窗口切换到MyEclipse Database Explorer界面,然后打开右键刚才所建立的链接

(21)

选择属于你自己的用户;然后选择T able

(22)

;右键选择如上图的属性:接下来的操作如下图:

(23)

 

点击 Next,进入下一步:

(24)

 

点击 Next,进入下一步:

 

(25)

 

至此,项目环境己经搭建完成;(由于截图太多 再次就不一一粘贴了 需要的话 可以E-mail索要)

三,    项目搭建完成,SSH各个部分配置文件的说明,以及它们之间存在的关系:

1, 首先是Struts的核心配置文件,即struts-config.xml:

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">

 

<struts-config>

    <data-sources />

    <form-beans>

   <!—建立Form表单,在此处进行登记  -à

       <form-bean name="userForm"

           type="com.ygkq.usermanager.view.struts.actionform.UserForm" />

    </form-beans>

 

    <global-exceptions />

    <global-forwards />

     <!—各个Action对应与之相对应的表单 -à

    <action-mappings>

        <!-- 用户管理 -->

       <action parameter="opers" attribute="userForm" name="userForm"

           path="/doUser" scope="request">

          

           <forward name="login_ok" path="/welcome.jsp"></forward>

           <forward name="login_no" path="/index.jsp"></forward>

       </action>

    </action-mappings>  

    <controller       processorClass="org.springframework.web.struts.DelegatingRequestProcessor">

    </controller>

    <message-resources

       parameter="com.ygkq.usermanagerview.struts.ApplicationResources">

    </message-resources>

  <!—Spring辅助Struts管理Struts-à

<plug-in

       className="org.springframework.web.struts.ContextLoaderPlugIn">

       <set-property property="contextConfigLocation"

           value="/WEB-INF/action-servlet.xml" />

    </plug-in>

</struts-config>

2,其次就是SpringdapplicationContext.xml文件和action-servlet.xml文件:

applicationContext.xml文件:

<?xml version="1.0" encoding="UTF-8"?>

<beans

    xmlns="http://www.springframework.org/schema/beans"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

 

    <!-- Session 工厂 -->

    <bean id="sessionFactory"       class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

       <property name="configLocation"

           value="classpath:hibernate.cfg.xml"><!-- 可以不要配置文件(hibernate.cfg.xml),直接写在这个Spring的配置文件中 -->

       </property>

    </bean>

    <!-- 模板 -->

    <bean id="hibernateTemplate"

       class="org.springframework.orm.hibernate3.HibernateTemplate">

       <property name="sessionFactory" ref="sessionFactory" />

    </bean>

    <!-- 事务器 -->

    <bean id="transactionManager"       class="org.springframework.orm.hibernate3.HibernateTransactionManager">      <property name="sessionFactory" ref="sessionFactory" />

    </bean>

    <!-- 对外代理 -->

    <!-- 1,用户管理 -->

    <bean id="userDaoImp"

       class="com.ygkq.usermanager.model.dao.hibernate.UserDaoImp">

       <property name="hibernateTemplate" ref="hibernateTemplate" />

    </bean>

    <bean id="userServiceTarget"

       class="com.ygkq.usermanager.model.service.spring.UserServiceImp">

       <property name="userdao">

           <ref local="userDaoImp" />

       </property>

    </bean>

    <bean id="userService"       class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">     <property name="transactionManager">

           <ref local="transactionManager" />

       </property>

       <property name="target">

           <ref local="userServiceTarget" />

       </property>

       <property name="transactionAttributes">

           <props>

              <prop key="*">PROPAGATION_REQUIRED</prop>

           </props>

       </property>

    </bean>

</beans>

action-servlet.xml文件:

<!—Spring辅助Struts管理Struts-à

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

    <bean name="/doUser"

       class="com.ygkq.usermanager.view.struts.action.UserAction"

       scope="prototype">

    </bean>   

</beans>

      3,最后就是Hibernatehibernate.cfg..xml文件:

<?xml version='1.0' encoding='UTF-8'?>

<!DOCTYPE hibernate-configuration PUBLIC

          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"

          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

 

<!-- Generated by MyEclipse Hibernate Tools.                   -->

<hibernate-configuration>

 

    <session-factory>

       <property name="connection.username">wangxiaodong</property>

       <property name="connection.url">

           jdbc:oracle:thin:@192.168.0.2:1521:ALIZEEDB

       </property>

       <property name="dialect">

           org.hibernate.dialect.Oracle9Dialect

       </property>

              <property name="myeclipse.connection.profile">Test</property>

 

       <property name="connection.password">donny</property>

       <property name="connection.driver_class">

           oracle.jdbc.driver.OracleDriver

       </property>

       <mapping

           resource="com/ygkq/usermanager/model/entity/User.hbm.xml" />      

    </session-factory>

</hibernate-configuration>

该文件基本上不用动,都是自动生成的代码;当然,你也可以根据自己的需要添加代码,例如,你想在执行HQL语句的时候让它显示SQL语句,可将

<property name="hibernate.show_sql">true</property>

插入代码中

另外在图(1)中还有两个配置文件没有提到,那就是log4j.properties mytag.tld;其中log4j.properties是配置日志信息的;而mytag.tld主一个自定义标签;

四,    SSH框架搭建完成:

SSH框架基本搭建完成,如果有不对或者不妥之处,请随时指教!~

E-mail:jerry8059@163.com

 

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值