SSH(struts2.2+spring3.1+hibernate3.3)框架简单搭建

       自从开通博客以来,都没有写过技术博客,觉得应该是时候把自己学的东西开始记录一下,毕竟随着自己学习的东西越来越多,还是怕会忘记以前学习的东西的。

       最近都是在用SSH框架做项目,框架原先是老师搭的,但是自己钻研了一下,感觉搭建这个框架也不是很难,但是要具体了解这个是干嘛的?为什么那么做?其实都不算是很了解。这个框架我估计已经用了半年了吧,时间也不长,做的项目也不是很多,所以自己简略的见识和经验分享出来,大家看到有什么错误的,记得告诉我改正一下呀。


目录(一个简单的目录)

    一 . 环境准备

    二 . SSH框架搭建

    三 . 搭建会出现的异常

    


一 .环境准备

      IDE:myeclipse10

      JDK:jdk1.6

      S2SH选择:struts2.2,spring3.1,hibernate3.3

      jar包:使用myeclipse内置的SSH的jar包

     MySQL:MySQL5.5


二.SSH框架搭建

   1. 打开myeclipse,长这样的,应该都不陌生呀。



2.新建一个web project,命名为LoginSSH,并点击finish按钮完成新建项目。



到此处为止,一个基本的wen项目就建立好了。下面开始为这个web项目添加SSH框架的支持。

3.添加struts2框架支持,步骤如下:

3.1. 在LoginSSH项目上右击---->选择MyEclipse----->选择add struts capablities



   

    

    3.2. 选择struts2,按照下图配置:


  

 

    3.3. 点击next,选择struts2 core 和struts2 spring两个,点击finish,至此完成strtus2框架的添加。


4.添加spring的支持,和struts2的差不多。

  4.1.在项目上右击LoginSSH----->点击MyEclipse-------->点击add spring capablities

  4.2.在add spring capablities窗口,选择spring core和spring web,并按照下图配置即把jar包copy到/WEB-INF/lib下(方便移动)


4.3. next窗口中,把AOP builder前的勾去掉,点击finish,即可完成对于spring 的添加,如图。



5.hibernate框架的添加

    5.1.添加数据源,在右上角点击MyEclipse Hibernate(若没有可先点击other,在窗口中找到MyEclipse Hibernate),在data Brower窗口中右击---->选择new---->弹出窗口如下配置:(mysql的jar包可以自己下载,也可以在本博客中下载)

    

    

5.2完成配置数据源后,在右上角点击Myeclipse Java Enterprise回到原先的界面 ,接下来就跟添加strtus2框架和spring框架一样添加hibernate框架。

           5.3在项目上右击LoginSSH----->点击MyEclipse-------->点击add hibernatecapablities,弹出窗口,按照下图配置即可:

      


    5.4 点击next,选择使用spring的ApplicationContext.xml文件,把hibernate的数据源配置在spring配置文件中(如果选择hibernate.cfg.cml的话会新建一个xml文件,里面有数据库的配置信息,为了方便我们直接放在spring配置文件即可)。

    5.5 点击next,选择已存在的spring配置文件即可。

    5.6 点击next,在DB Driver中找到刚刚配置好的loginssh数据源,点击next,把create sessionFactory class前面的勾去掉,点击finish即可。

    


到了这里,SSH框架就全部加完了,接下来就是配置使用的问题了。(如果你仔细观察,你会发现原先web项目名字上的小浏览器图标,变成了一朵黑云了,这就是配置成功的标志呀)。


6. 在web.xml中配置spring监听器的使用(还需要把log4j.properties文件copy到工程的src文件夹下,不然框架加载不成功的

 

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <display-name></display-name>	
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath:applicationContext.xml</param-value>
  </context-param>
  <!-- spring监听器 -->
  <listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <!-- struts2过滤器 -->
  <filter>
  	<filter-name>struts2</filter-name>
  	<filter-class>
  		org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
  	</filter-class>
  </filter>
  <filter-mapping>
  	<filter-name>struts2</filter-name>
  	<url-pattern>*.action</url-pattern>
  </filter-mapping>
    <!-- 编码方式的更改:spring过滤器 -->
  <filter>
  <filter-name>CharacterEncodingFilter</filter-name>
  <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  <init-param>
  <param-name>encoding</param-name>
  <param-value>utf-8</param-value>
  </init-param>
  <init-param>
  <param-name>forceEncoding</param-name>
  <param-value>true</param-value>
  </init-param>
  </filter>
 	<filter-mapping>
 	<filter-name>CharacterEncodingFilter</filter-name>
 	<url-pattern>/*</url-pattern>
 	</filter-mapping></web-app>

若是在console窗口出现以下的打印信息即表示自己的S2SH框架初步搭建成功了呀。



至此,S2SH框架就全部完成了。

三.可能出现的问题及其解决方法

1.可能出现在strut.xml中找不到在applicationContext.xml中注入的bean的ID名,添加struts2-spring-plugin-2.1.2.jar到WEB-INF/lib文件夹下即可。(在添加struts框架时添加的struts2 spring包里就是这个plugin包
2.可能出现java.lang.NoSuchMethodError: antlr.collections.AST.getLine()I异常,该异常是因为Struts自带的antlr-2.7.2.jar,比Hibernate3.3自带的antlr-2.7.6.jar的版本要低,故要删除前一个低版本的,, struts1.3 和2.1都带有antlr-2.7.2.jar,具体操作如下:在MyEclipse 下,windows-->preferences-->在文本框中搜索struts2-->选择 antlr2.7.2-->remove,如果已经运行过的工程则还要删除tomcat目录lib的antlr-2.7.2.jar。


好了,终于写完自己的第一篇技术博客了,下一篇就继续完善这个S2SH框架,将会为这个框架添加简单的登录功能。源码就暂时不给了,毕竟只是一个简单的框架而已,还什么都没有在里面。


 


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值