- 浏览: 1224803 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (883)
- Spring (101)
- Swing (1)
- Mysql (21)
- Js (59)
- Jsp (2)
- Hibernate (19)
- Myeclipse (5)
- SqlServer 2000 (2)
- poi (15)
- Java (70)
- SSH (12)
- Html (47)
- Fusion Charts (1)
- C\C++ (2)
- 汇编 (36)
- Jquery (37)
- Struts2 (6)
- Ubuntu (16)
- powerDesinger (4)
- Jboss (3)
- JAX-RS (13)
- JAXB (5)
- JAX-WS (11)
- JMS (4)
- WebSocket (8)
- PHP (16)
- Flash (1)
- maven (3)
- Oracle (8)
- HttpClient (6)
- sqlserver (19)
- svn (5)
- Tomcat (3)
- Jdbc (3)
- EsayUi (11)
- 微信公众平台 (19)
- IIS (2)
- Freemarker (11)
- Comet (1)
- Spring MVC (85)
- JBoss Seam (3)
- 二维码 (9)
- Spring Security (4)
- Ehcache (3)
- Apache Shiro (7)
- jackson (16)
- JPA (8)
- jcaptcha (2)
- RSA (2)
- Ajax (6)
- 跟我学Shiro (0)
- Spring4 (19)
- 跟我学spring3 (0)
- css (32)
- excel (4)
- Filter (3)
- 微信公众帐号开发教程 (0)
- Android (6)
- log4j (6)
- 淘宝接口 (17)
- 支付集成 (3)
- 单点登录 (3)
- Html5 (27)
- 移动平台前端 (3)
- Linux (44)
- FusionCharts (27)
- Json Jackson Xml (5)
- 方培工作室-微信开发 (0)
- Apache与Tomcat与IIS整合 (10)
- Nginx (17)
- webService (2)
- apache (4)
- lucene (3)
- lodop (2)
- Shiro (3)
- zTree (2)
- ireport (12)
- Servlet3.0 (5)
- 前端美工 (19)
- AngularJS (1)
- C#开发微信门户及应用 (0)
- Shell (3)
- bat脚本 (16)
- Bootstrap (26)
- Less (10)
- photoshop (6)
- Redis (6)
- Mongodb (10)
- MyBatis (3)
- 数据结构 (0)
- 读写分离-主从复制 (0)
- JFinal (0)
- 百度地图api (3)
- hadoop-hbase-hive-spark (3)
- WebStorm (2)
- Quartz (5)
- ios (0)
- Mina (8)
- Android Studio (4)
- Ratchet教程 (0)
- 移动端重构系列 (1)
- cubic-bezier贝塞尔曲线CSS3动画工具 (1)
- nginx+tomcat+memcached集群 (0)
- 集群 (0)
- ZooKeeper (3)
- Dubbo (0)
- vpn (0)
- kafka (0)
- JVM垃圾回收机制 (0)
- 微信小程序 (0)
- Lua (0)
- Hystrix (0)
- Vue.js (0)
- mycat (0)
- Openresty (0)
- springBoot (0)
- 新分类 (0)
- guava (0)
- 大数据 (0)
- Sentinel (0)
最新评论
-
JackMacing:
中文怎么解决?
SpringMVC与iReport(JasperReports) 5.6整合开发实例 -
18335864773:
用pageoffice把.可以实现在线的文档操作.直接转pdf ...
转:使用jasperreport动态生成pdf,excel,html -
linhao0907:
推荐一款轻量开源的支付宝组件:https://github.c ...
关于Alipay支付宝接口(Java版) -
songronghu:
太好了,非常有用,谢谢分享~
Java ConcurrentModificationException 异常分析与解决方案 -
wzwahl36:
http://www.atool.org/json2javab ...
Java下利用Jackson进行JSON解析和序列化
使用注解来配置Action的最大好处就是可以实现零配置,但是事务都是有利有弊的,使用方便,维护起来就没那么方便了。 要使用注解方式,我们必须添加一个额外包:struts2-convention-plugin-2.x.x.jar。 虽说是零配置的,但struts.xml还是少不了的,配置如下: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN" "http://struts.apache.org/dtds/struts-2.1.7.dtd"> <struts> <!-- 请求参数的编码方式--> <constant name="struts.i18n.encoding" value="UTF-8"/> <!-- 指定被struts2处理的请求后缀类型。多个用逗号隔开--> <constant name="struts.action.extension" value="action,do,htm"/> <!-- 当struts.xml改动后,是否重新加载。默认值为false(生产环境下使用),开发阶段最好打开 --> <constant name="struts.configuration.xml.reload" value="true"/> <!-- 是否使用struts的开发模式。开发模式会有更多的调试信息。默认值为false(生产环境下使用),开发阶段最好打开 --> <constant name="struts.devMode" value="false"/> <!-- 设置浏览器是否缓存静态内容。默认值为true(生产环境下使用),开发阶段最好关闭 --> <constant name="struts.serve.static.browserCache" value="false" /> <!-- 指定由spring负责action对象的创建 <constant name="struts.objectFactory" value="spring" /> --> <!-- 是否开启动态方法调用--> <constant name="struts.enable.DynamicMethodInvocation" value="false"/> </struts> action类的注解: package com.tjcyjd.web.action; import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.ExceptionMapping; import org.apache.struts2.convention.annotation.ExceptionMappings; import org.apache.struts2.convention.annotation.Namespace; import org.apache.struts2.convention.annotation.ParentPackage; import org.apache.struts2.convention.annotation.Result; import org.apache.struts2.convention.annotation.Results; import com.opensymphony.xwork2.ActionSupport; /** * Struts2基于注解的Action配置 * */ @ParentPackage("struts-default") @Namespace("/annotation_test") @Results( { @Result(name = "success", location = "/main.jsp"), @Result(name = "error", location = "/error.jsp") }) @ExceptionMappings( { @ExceptionMapping(exception = "java.lange.RuntimeException", result = "error") }) public class LoginAction extends ActionSupport { private static final long serialVersionUID = 2730268055700929183L; private String loginName; private String password; @Action("login") //或者写成 @Action(value = "login") public String login() throws Exception { if ("yjd".equals(loginName) && "yjd".equals(password)) { return SUCCESS; } else { return ERROR; } } @Action(value = "add", results = { @Result(name = "success", location = "/index.jsp") }) public String add() throws Exception { return SUCCESS; } public String getLoginName() { return loginName; } public void setLoginName(String loginName) { this.loginName = loginName; } public String getPassword() { return password; } public void setPassword(String password) { this.password= password; } } 这样就完成了一个基于注解的action配置。 总结常用的注解如下: Namespace:指定命名空间。 ParentPackage:指定父包。 Result:提供了Action结果的映射。(一个结果的映射) Results:“Result”注解列表 ResultPath:指定结果页面的基路径。 Action:指定Action的访问URL。 Actions:“Action”注解列表。 ExceptionMapping:指定异常映射。(映射一个声明异常) ExceptionMappings:一级声明异常的数组。 InterceptorRef:拦截器引用。 InterceptorRefs:拦截器引用组。
Classes contained in struts2-convention-plugin-2.1.6.jar: org.apache.struts2.convention.ActionNameBuilder.class org.apache.struts2.convention.annotation.Result.class org.apache.struts2.convention.annotation.Namespaces.class org.apache.struts2.convention.annotation.Namespace.class org.apache.struts2.convention.annotation.AnnotationTools.class org.apache.struts2.convention.annotation.InterceptorRefs.class org.apache.struts2.convention.annotation.InterceptorRef.class org.apache.struts2.convention.annotation.Actions.class org.apache.struts2.convention.annotation.Action.class org.apache.struts2.convention.annotation.ExceptionMapping.class org.apache.struts2.convention.annotation.ParentPackage.class org.apache.struts2.convention.annotation.Results.class org.apache.struts2.convention.annotation.ResultPath.class org.apache.struts2.convention.annotation.ExceptionMappings.class org.apache.struts2.convention.annotation.DefaultInterceptorRef.class org.apache.struts2.convention.ClasspathConfigurationProvider.class org.apache.struts2.convention.ActionConfigBuilder.class org.apache.struts2.convention.StringTools.class org.apache.struts2.convention.PackageBasedActionConfigBuilder.class org.apache.struts2.convention.ResultMapBuilder.class org.apache.struts2.convention.InterceptorMapBuilder.class org.apache.struts2.convention.classloader.ReloadingClassLoader.class org.apache.struts2.convention.classloader.ResourceStore.class org.apache.struts2.convention.classloader.ResourceStoreClassLoader.class org.apache.struts2.convention.classloader.FileResourceStore.class org.apache.struts2.convention.DefaultInterceptorMapBuilder.class org.apache.struts2.convention.SEOActionNameBuilder.class org.apache.struts2.convention.DefaultResultMapBuilder.class org.apache.struts2.convention.ConventionsService.class org.apache.struts2.convention.DefaultActionNameBuilder.class org.apache.struts2.convention.ReflectionTools.class org.apache.struts2.convention.ClasspathPackageProvider.class org.apache.struts2.convention.ConventionsServiceImpl.class org.apache.struts2.convention.ConventionUnknownHandler.class
- struts2-convention-plugin-2.1.6.jar (61.3 KB)
- 下载次数: 10
发表评论
-
struts2 中的 result 返回类型是 json 的配置问题
2015-06-07 12:28 4061、引入包(本文中的包全部引自struts-2.1.8. ... -
宿舍管理系统
2012-03-04 00:26 1911项目名称 宿舍管理系统 开发工具 MyEclipse6.0+ ... -
S2SH问题点
2012-03-02 14:29 902Struts2: 为什么每次请 ... -
struts2的工作原理,流程
2012-03-02 08:42 3125上图来源于Struts2官方站点,是Struts ... -
Struts2使用之Action注解的配置
2011-11-23 09:45 1869在Action中提供了下列几种注解: ParentPac ...
相关推荐
在"Struts 2使用注解配置Action"中,我们不再需要在struts.xml中为每个Action类手动添加配置。相反,我们可以在Action类或者方法上直接使用注解来声明它们的功能。这样不仅提高了代码的可读性,还使得配置更加灵活。...
Struts2 提供了一种使用注解替代 XML 配置的方式,使得开发者无需编写繁琐的 struts.xml 文件,即可完成Action的配置。 **Struts2 注解配置** 1. **Action 注解** - `@Action` 用于标记一个类或方法作为 Struts2 ...
首先,了解`@Action`注解是理解Struts2注解配置的关键。这个注解用于标记一个类或方法作为处理HTTP请求的动作。例如: ```java @Action(value = "saveUser", results = { @Result(name = "success", location = ...
"Struts2 注解配置 Action 及拦截器几种不同方式写法对应的路径指向" Struts2 注解配置 Action 及拦截器是 Struts2 框架中的核心组件之一,负责处理用户请求并返回响应结果。下面,我们将通过详细的解释和示例代码...
Struts2的注解配置主要集中在Action类和结果类型上。使用@Action注解,我们可以直接在Action类上声明其对应的URL路径,而无需在struts.xml文件中进行配置。例如: ```java @Action(value = "saveUser", results = {...
此外,Struts2还提供了其他注解,如`@Results`、`@Namespace`、`@ParentPackage`等,它们分别用于定义一组结果、Action所属的命名空间以及继承的配置包。这些注解可以帮助我们在不编写XML配置的情况下,完成大部分的...
在这个"struts2.3.4.1注解零配置"的例子中,我们将深入探讨如何利用Struts2的注解来构建一个简单的登录系统。 首先,了解Struts2的核心概念是必要的。Struts2是一个基于MVC(Model-View-Controller)设计模式的框架...
总结一下,Struts2基于注解的文档上传与下载主要包括以下步骤: 1. 使用`@Action`注解定义处理上传和下载的Action方法。 2. 在上传方法中,读取文件内容,存储到服务器,并处理可能出现的异常。 3. 在下载方法中,...
本文旨在为读者提供一套详尽的Struts2注解配置指南,帮助大家快速理解和掌握如何通过注解来配置Struts2的Action。 #### 二、Struts2注解配置基础 ##### 1. Struts2注解支持概述 - **插件依赖**:要启用Struts2的...
Struts2中使用注解配置Action方法详解 Struts2框架提供了四个与Action相关的注解类型,分别为ParentPackage、Namespace、Result和Action。这四个注解类型可以帮助开发者更方便地配置Action,实现零配置,零配置将从...
本教程将通过一个"Struts2注解Demo"来深入探讨Struts2中的注解用法,帮助开发者更高效地配置和管理Action类。 首先,Struts2的注解允许我们避免传统的XML配置,从而实现更加简洁、直观的编程方式。在`Struts2Demo`...
Struts2注解配置教程是指导开发者如何使用Java注解替代传统的XML配置来配置Struts2框架的一个教程系列。本文档主要涵盖了Struts2中注解配置的一些基本知识点以及如何通过注解实现零配置。 ### 注解配置之前 在介绍...
Struts2注解登录是Java Web开发中一种简化配置的方式,它允许开发者在代码中直接定义控制器、动作和结果页面的映射,从而避免了传统方式下需要在`struts.xml`配置文件中的繁琐设置。这种做法提高了代码的可读性和可...
"struts2注解必须包"指的是Struts2提供的一系列注解,它们对于简化Struts2应用的配置和增强其功能至关重要。 标题中的"struts2-convention-plugin-2.1.8.1.jar"是Struts2的约定插件(Convention Plugin)的一个特定...
Struts2允许开发者使用注解来配置Action类,而不是传统的XML配置文件。这种注解驱动的方式使得代码更加简洁,易于维护。例如,我们可以使用`@Action`注解标记一个方法作为处理请求的入口,`@Result`注解则可以定义...
在这个基于注解的Struts2简单工程中,我们将深入探讨如何使用注解来配置和控制应用程序的行为,而不是传统的XML配置文件。 在传统的Struts2配置中,我们通常会在`struts.xml`文件中定义Action类、结果类型和结果...
在实际的"Maven-web项目 Struts2 Struts注解"中,`Strut2-Demo`可能包含了以下内容: 1. `pom.xml`:Maven的配置文件,包含了项目依赖和构建信息。 2. `struts.xml`:Struts2的配置文件,可能包含了部分非注解的配置...
标题提到的"Struts2注解开发jar"主要指的是`struts2-convention-plugin`,这是一个Struts2的插件,它的主要作用是支持基于约定优于配置(Convention over Configuration)的开发模式。描述中提到的`struts2-...
本文将详细探讨如何使用Maven来整合Struts2,并利用全注解的方式简化配置,提高开发效率。首先,让我们理解这三个组件的核心作用: 1. Maven:是一个项目管理工具,它帮助开发者管理项目的构建、依赖、版本控制等。...
Struts2 Convention Plugin允许开发者通过注解来配置Action名称、拦截器、命名空间等,极大地简化了配置过程。 ##### 2.7 默认Action及结果 当用户访问特定路径时,如果没有显式定义Action,则Convention Plugin会...