`
zhzhiqun2005
  • 浏览: 227266 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

springside3 上 struts2.1.6 零配制 + restfull

阅读更多

Strus2.16 零配制+rest full

Woodfish_zhong 2009-03-31

最近在做网上审批的申报系统, 带着我做的那位同事由于也是一直想学新东西所以一心想用最新的东西,起初做这个平台的设计框架的时候技术总监建议用sevlete+jdbc来做,但是同事找借口要用新技术,刚好有一天我给他推荐了springside3这个框架。Springside3中比springside2的版式本有比较大的改进,其中有一点那就是利用了strurts2.0的零配制(Convention Plugin)也就是说不用配制strus.xml文件了。后来在就要开发展中,技术总监又说要用rest full,当时我就没有听过。他就简单地说了一点点。课下我就回去研究了。但由于我对其零配制还没有很深的了解, 也没有做过一个例子,所以研究半天最终并没有和我们的springside3零配制结合起来。最终今天我那个同事把这个问题搞定,在这里说一说。
网上有很多的资料,讲得都很简单。而且只是一个官网上的一个例子。这里就不讲那个例子了, 就直接把我们项目中用到的jar包, 以及要配制的文件, 以及配制中的一些意义解释一下。
一、   Struts2.0.xml
虽然说是零配制,但并不是这个文件都没有了, 如果没有这一个文件, 那就算不上是一个strus2的项目了。只不过这里配制的东西,并不是业务上的东西,而且是一个整体上的,零配制所需要的一些配制。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
        "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
	<!--  这个东西为什么注了,是由于用rest full了, 不注会与下面的冲突
 constant name="struts.convention.default.parent.package" value="crud-default" /-->
<!—下面的这个配制是对于action类的包的上一级一定要有这样一个包,也就是说action类不管你放在多深,其有必定要在action这样一个名字的包 ,一般来说,action下面应该就是某一业务的包名,某一业务包名下面就是一些XxxxAction.java(注意命名)文件-->
	<constant name="struts.convention.package.locators" value="action" />
<!—这是一个返回页面的存放的一级文件夹,其下面的文件夹里可以是包函包业务的文件夹,各业务文件夹下面是jsp-->
	<constant name="struts.convention.result.path" value="/WEB-INF/jsp/"/>
  	<!—以上是对于struts2.0零配制所需要的配制,下面的就是rest所需的一些配制-->
    <!—这是一个命名规则,如果value写的是Action,那么你的action请求java类就是XxxAction.java,如果是Control,那么就是XxxControl.java-->
    <constant name="struts.convention.action.suffix" value="Action"/>   
<constant name="struts.convention.action.mapAllMatches" value="true"/>   
<!—下面这个是rest的一个定义好的,就不用管它了-->
    <constant name="struts.convention.default.parent.package" value="rest-default"/>     	
	<package name="crud-default" extends="convention-default">
		<!-- 基于paramsPrepareParamsStack,增加store interceptor -->
		<interceptors>
			<interceptor-stack name="crudStack">
				<interceptor-ref name="store">
					<param name="operationMode">AUTOMATIC</param>
				</interceptor-ref>
				<interceptor-ref name="paramsPrepareParamsStack" />
			</interceptor-stack>
		</interceptors>

		<default-interceptor-ref name="crudStack" />
	</package>	
	<!-- 
		使用ZeroConfig + CodeBehind插件,实现约定大于配置的零配置文件风格.
	           特殊的Result路径在Action类中使用@Result设定. 
	<include file="test.xml"/>
	-->
	
</struts>

二、   Web.xml
Strus2过滤并不是用*.action了,而是用下面的写法。其它地方没有改变
	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>


三、   需要比springside3更多要添加的jar包
ognl-2.6.11.jar
json-lib-2.1-jdk15.jar
struts2-rest-plugin-2.1.6.jar
xstream-1.3.1.jar
分享到:
评论

相关推荐

    struts2+spring3+hibernate3+jquery+springside 做一个OA2

    标题 "struts2+spring3+hibernate3+jquery+springside 做一个OA2" 提供了一个综合的Web开发框架组合,用于构建一个办公自动化(OA)系统。这个系统基于以下技术栈: 1. **Struts2**: Struts2是一个Java Web MVC...

    STRUTS2:零配置插件CodeBehind

    ### STRUTS2:零配置插件CodeBehind详解 #### 一、概述 Struts2框架作为Java Web开发中的一款重要工具,在简化Web应用程序开发方面提供了丰富的功能与灵活性。随着框架的发展,Struts2社区不断推出新的插件和技术...

    springside3与传统ssh区别

    ### Springside3与传统SSH(Struts + Spring + Hibernate)的区别 #### 1. 数据库设计 在数据库设计方面,Springside3采用了一种更为现代化的方法,这体现在其对实体对象、DAO对象的设计上。它更加侧重于利用Java ...

    springside3文档资料收录

    《SpringSide3:全方位探索Java开发的利器》 SpringSide3是Java开发领域的一个重要参考资料,它是由知名开发者Calvin创建并维护的项目,旨在为Java开发者提供一套完整的Spring框架学习与实践指南。SpringSide3不仅...

    springside3源码及jar

    《深入解析springside3:源码与jar剖析》 springside3是一个基于Spring框架的轻量级Java开发工具集,它旨在简化企业级应用的开发过程,提供了一套完整的构建工具、最佳实践和代码示例。在本文中,我们将深入探讨...

    springside3+ext源代码

    《SpringSide3+EXT源代码解析与应用》 SpringSide3是一个基于Spring框架的轻量级Java开发平台,旨在提供一套高效、规范的开发实践。它整合了多种流行的技术,如EXTJS、EXT2、Spring、JPA以及Hibernate和Struts2等,...

    SpringSide3-core-3.3.4

    《SpringSide3-core-3.3.4:深入解析核心模块与扩展功能》 SpringSide3-core-3.3.4是SpringSide项目的一个重要版本,它是一个基于Java的轻量级开发框架,旨在简化Spring的使用,提高开发效率。这个压缩包包含了两个...

    springside3

    《SpringSide 3:构建高效Java企业应用的基石》 SpringSide 3 是一个基于Spring框架的开源项目,旨在提供一套高效、规范的Java企业级应用开发实践。它以其清晰的架构、丰富的示例和全面的文档,为开发者提供了一个...

    SpringSide3框架

    SpringSide3框架,SpringSide3框架SpringSide3框架SpringSide3框架

    springside3 完整项目实例

    《SpringSide3 完整项目实例详解》 SpringSide 是一个开源的 Java 开发框架,其版本3(SpringSide3)是基于 Spring Framework 的企业级应用开发平台,它旨在简化 Spring 的使用,提供清晰的实践指导,使得开发者...

    springside3-core-3.2.2包

    springside3-core-3.2.2 

    springside3-extension-3.3.4

    springside3-extension-3.3.4.jar

    springside3-core-3.3.4

    springside3-core-3.3.4.jar

    springside3-core-3.3.4.jar

    springside3-core-3.3.4.jar

Global site tag (gtag.js) - Google Analytics