SSH框架搭建

闲来无事,来搞下SSH框架的搭建吧。

1.struts搭建

这个不用说了吧,新建一个web项目,把struts-2.3.7-all解压后的struts2-blank里面的lib下面的包全部复制到你新建的web项目里面,把web-inf下面的web.xml复制过去,把src目录下的struts.xml复制到新建的src目录下。最重要的是你要集成spring,那么问题来了,你少包了,亲。去struts-2.3.7-all文件夹的lib目录下把struts2-spring-plugin-2.3.7包拷贝到新建的lib目录下面。调试,ok。

2.集成spring

(1)aspectj文件夹下面的包都拷贝过去

AspectJ是一个面向切面的框架,它扩展了Java语言。spring
使用AOP的时候也会用到它。

(2)spring的核心包肯定少不了了。

(3)cglib包也是必须的。

cglib是一个强大的,高性能,高质量的Code生成类库,它可以在运行期扩展Java类与实现Java接口。Hibernate用它来实现PO(Persistent
Object 持久化对象)字节码的动态生成。

(4)j2ee文件夹下的common-annotations也需要

annotation是注解时需要用到。

(5)jakarta-commons文件夹下的commons-logging,commons-pool(java数据库连接池
包)

(6)需要注意的是spring的jar包里面有slf的api和slf-log4j的转换包,那么还需要一个log4j的包,也就是总共三个

slf4j-api-1.5.0,slf4j-log4j12-1.5.0和log4j12-1.5.0这样输出log就不会报log什么的错误了。

ok上图。

目前的jar包就这么多。

光说不练不行,那么我们先建立晒晒struts.xml的内容。

<span style="color:#333333;"><?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>

    <constant name="struts.enable.DynamicMethodInvocation" value="false" />
    <constant name="struts.devMode" value="false" />

    <package name="default" namespace="/pages" extends="struts-default">

        <default-action-ref name="index" />

        <global-results>
            <result name="error">/error.jsp</result>
        </global-results>

        <global-exception-mappings>
            <exception-mapping exception="java.lang.Exception" result="error"/>
        </global-exception-mappings>

        <action name="userAction" class="</span><strong><span style="color:#ff0000;">userActionBean</span></strong><span style="color:#333333;">">
            <result name="success">success.jsp</result>
        </action>
    </package>

</struts></span>

好,大家看到粗红体的字了吗?为什么不是类的包路径呢???!!!对了,因为action也要交给spring容器实例化的啊。所以,这里只写spring配置文件里的bean的name/id,下面是spring的配置文件applicationContext.xml的内容

<span style="color:#333333;"><?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       </span><span style="color:#ff0000;"><strong>xmlns:context="http://www.springframework.org/schema/context"</strong></span><span style="color:#333333;">
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context.xsd">
  <!-- Resource注解方式得到实例化的bean -->
</span><strong><span style="color:#ff0000;">  <context:annotation-config/></span></strong><span style="color:#333333;">

  <bean id="userService" class="com.test.xuehf.serivce.UserServiceImp"/>
  <bean id="userActionBean" class="com.test.xuehf.action.UserAction">
  <!-- setter 方法注入  action中必须要有setter方法
  	<property name="userService" ref="userService"></property> -->
  </bean>

</beans></span>

怎么又有粗红体了!嗯,不要着急,这个是为了方便你在action中调用service的时候直接以@Resource注解的方式获取spring已经实例化的service实例而配置的,必须要写上这两句。OK,运行下吧

Caused by: java.lang.NullPointerException

oh,NO!why,为什么会报空指针异常呢?这是因为你的web.xml没有配置spring的监听,需要spring去初始化bean才不会有空指针的出错啊。

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    <display-name>Struts Blank</display-name>
    <!-- 	 -->
	<context-param>
	  <param-name>contextConfigLocation</param-name>
	  <param-value>classpath:applicationContext.xml</param-value>
	</context-param>

	<listener>
	  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>

    <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>/*</url-pattern>
    </filter-mapping>

    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
    </welcome-file-list>

</web-app>

那么ok了,现在为止spring集成struts已经可以运行了

未完待续。。。

时间: 2024-10-09 13:11:00

SSH框架搭建的相关文章

ssh框架搭建Struts2.06+spring2.5+hibernate3.2整合实例代码教程步骤

原创整理不易,转载请注明出处:ssh框架搭建Struts2.06+spring2.5+hibernate3.2整合实例代码教程步骤 代码下载地址:http://www.zuidaima.com/share/1760074977233920.htm 最近闲来无事可做,于是开始学习struts2.Struts2和struts1.webwork2有什么区别我也不说了,网上有很多这方面的资料.以前在项目中从未使用过struts,一直使用spring+hibernate,现在既然学习了Struts,也不能

eclipse中SSH框架搭建和项目开发基本步骤

1.下载SSH框架代码和eclipse插件,地址:http://yunpan.cn/QTCrdHF4xkEVp (提取码:0e8d) 注意,一定要分清楚,SSH框架是要导入到自己的工程项目中的包,这些包是要在项目中调用的预先开发好的java文件:而eclipse插件是在eclipse环境下开发SSH相关项目是方便用户建立项目管理项目的工具,跟项目本身的文件和功能无关.一定要分清楚这两个概念. 2,下载完成之后,解压,会发现有5个文件夹,第一步要用到的是spring plugins for ecl

SSH框架搭建 详细图文教程

转载请标明原文地址 一.什么是SSH? SSH是JavaEE中三种框架(Struts+Spring+Hibernate)的集成框架,是目前比较流行的一种Java Web开源框架. SSH主要用于Java Web的开发.现在SSH有SSH1和SSH2两种,区别在于Struts的版本是struts1.x还是2.x.本文介绍的是SSH1. 二.Struts Spring Hibernate各起什么作用? Struts:控制逻辑关系. Spring:解耦. Hibernate:操作数据库. 三.学习SS

SSH框架搭建过程

什么是SSH? SSH对应 struts spring hibernate struts 采用MVC模式,主要是作用于用户交互 spring 采用IOC和AOP~作用比较抽象,是用于项目的松耦合 hibernate 是对象持久化框架,其实就是实体类和数据库表建立关系,操作类就会触发相应的sql语句,可以不用写任何sql语句,完成数据库编程(引自百度知道) SSH就是Struts + Spring + Hibernate 3个Java框架的集合,现在Java开发中常用的框架组合.用来开发后台,与前

SSh框架搭建(Struts2.1+Hibernate4.0+Spring3.1)

一.使用工具 开发工具:My Eclipse 10.7以及相应的java开发工具 框架版本:Struts2.1+Hibernate3+Spring3.0 数据库:MySql5.5 Mysql可视化工具:Navicat 11 所需软件的下载地址:Navicat 11:http://pan.baidu.com/s/1nthrWtb                                MyEclipse:http://www.xpgod.com/soft/7498.html         

SSH框架搭建 笔记 (含spring注解驱动)

分类: web 开发2014-04-27 12:33 354人阅读 评论(0) 收藏 举报 框架springinterface注解 好久没有搭建框架了,今天整理下以前的知识,整合下SSH,没想到手生了,一时半会各种异常出来,经过一番挣扎后,终于搞出来了雏形, 下面是我做整合框架的笔记,如果大家开发过程中又遇到的情况,可以参考下 首先是包的结构,(命名不算正规哈~,临时写的仓促了点) 框架是基于JAR包的基础上构建的,所以必须必备的jar包必须先下好, 如图: 没有的可以在本文源代码里下: 搭建框

SSH框架搭建过程详解

Spring.Struts2.Hibernate框架: 具体三大框架的知识以前的文章写过,在这里整合 Spring框架知识:http://www.cnblogs.com/xuyiqing/category/1164340.html Struts2框架知识:http://www.cnblogs.com/xuyiqing/category/1164341.html Hibernate框架知识:http://www.cnblogs.com/xuyiqing/category/1163473.html

SSH框架搭建笔记

1.建立一个web项目,设置编码格式,建立src下的包,建立资源文件夹 2.加入Spring运行必须的jar包(5个jar包) spring-beans-4.1.4.RELEASE.jar spring-context-4.1.4.RELEASE.jar spring-core-4.1.4.RELEASE.jar spring-expression-4.1.4.RELEASE.jar commons-logging-1.2.jar 3.建立Spring的配置文件 3.1 applicationC

[JavaEE] SSH框架搭建所需要的包

struts2commons-logging-1.0.4.jar 主要用于日志处理freemarker-2.3.8.jar 模板相关操作需要包ognl-2.6.11.jar ognl表达示所需包,xwork-2.0.7.jar xwork核心包struts2-core-2.0.14.jar struts2核心包struts2-spring-plugin-2.0.14.jar struts2整合spring所需要的包如果还需要整合其它框架或者插件,再导入其它的包 hibernateHibernat