Struts2 注释类型
Struts 2 应用程序可以使用Java5注释作为替代XML和Java属性配置。这里是清单的不同的类别有关的最重要的注解:
命名空间注释(动作注释):
@ Namespace注释允许在Action类中,而不是基于零配置的约定动作的命名空间的定义。
@Namespace("/content")
public class Employee extends ActionSupport{
...
}
结果注释 - (动作译注):
@ Result注解允许在Action类中,而不是一个XML文件中定义的动作结果。
@Result(name="success", value="/success.jsp")
public class Employee extends ActionSupport{
...
}
结果注释 - (动作译注):
@ Results注解定义了一套动作的结果。
@Results({
@Result(name="success", value="/success.jsp"),
@Result(name="error", value="/error.jsp")
})
public class Employee extends ActionSupport{
...
}
注释后(拦截注释):
@After注解标志着一个需要调用后的主要操作方法和执行结果的操作方法。返回值将被忽略。
public class Employee extends ActionSupport{
@After
public void isValid() throws ValidationException {
// validate model object, throw exception if failed
}
public String execute() {
// perform secure action
return SUCCESS;
}
}
注释之前(拦截注释):
@ Before注释标记需要一个操作方法的主要操作方法之前被调用执行结果。返回值将被忽略。
public class Employee extends ActionSupport{
@Before
public void isAuthorized() throws AuthenticationException {
// authorize request, throw exception if failed
}
public String execute() {
// perform secure action
return SUCCESS;
}
}
BeforeResult注释 - (拦截注释):
@ BeforeResult注解标志着一个结果之前需要执行的操作方法。返回值将被忽略。
public class Employee extends ActionSupport{
@BeforeResult
public void isValid() throws ValidationException {
// validate model object, throw exception if failed
}
public String execute() {
// perform action
return SUCCESS;
}
}
ConversionErrorFieldValidator注释 - (验证译注):
此验证注解如果有任何转换错误进行了实地检查,并适用于他们,如果他们存在。
public class Employee extends ActionSupport{
@ConversionErrorFieldValidator(message = "Default message",
key = "i18n.key", shortCircuit = true)
public String getName() {
return name;
}
}
DateRangeFieldValidator注释 - (验证译注):
这验证注解检查日期字段的值在指定范围内。
public class Employee extends ActionSupport{
@DateRangeFieldValidator(message = "Default message",
key = "i18n.key", shortCircuit = true,
min = "2005/01/01", max = "2005/12/31")
public String getDOB() {
return dob;
}
}
DoubleRangeFieldValidator注释 - (验证译注):
此验证注解检查双字段有一个值,该值在指定范围内。如果既不最小或最大,什么都不会做的。
public class Employee extends ActionSupport{
@DoubleRangeFieldValidator(message = "Default message",
key = "i18n.key", shortCircuit = true,
minInclusive = "0.123", maxInclusive = "99.987")
public String getIncome() {
return income;
}
}
EmailValidator注释 - (验证译注):
这验证注解检查一个字段是一个有效的E-mail地址,如果它包含一个非空的字符串。
public class Employee extends ActionSupport{
@EmailValidator(message = "Default message",
key = "i18n.key", shortCircuit = true)
public String getEmail() {
return email;
}
}
ExpressionValidator注释 - (验证译注):
这种非字段级验证验证所提供的正则表达式。
@ExpressionValidator(message = "Default message", key = "i18n.key",
shortCircuit = true, expression = "an OGNL expression" )
IntRangeFieldValidator注释 - (验证译注):
这验证注解检查一个数字字段的值在指定的范围内。如果既不最小或最大,什么都不会做的。
public class Employee extends ActionSupport{
@IntRangeFieldValidator(message = "Default message",
key = "i18n.key", shortCircuit = true,
min = "0", max = "42")
public String getAge() {
return age;
}
}
RegexFieldValidator 注释 - (验证译注):
这个注解验证一个字符串字段,使用正则表达式。
@RegexFieldValidator( key = "regex.field", expression = "yourregexp")
RequiredFieldValidator 注释 - (验证译注):
这验证注解检查一个字段不为空。标注必须被应用在方法层面。
public class Employee extends ActionSupport{
@RequiredFieldValidator(message = "Default message",
key = "i18n.key", shortCircuit = true)
public String getAge() {
return age;
}
}
RequiredStringValidator注释 - (验证译注):
这验证注解检查一个字符串字段不为空(即非空,长度> 0)。
public class Employee extends ActionSupport{
@RequiredStringValidator(message = "Default message",
key = "i18n.key", shortCircuit = true, trim = true)
public String getName() {
return name;
}
}
StringLengthFieldValidator注释 - (验证译注):
这个验证检查字符串字段是合适的长度。假定该字段是一个字符串。如果设置既不是minLength 也不是最大长度,什么都不会做。
public class Employee extends ActionSupport{
@StringLengthFieldValidator(message = "Default message",
key = "i18n.key", shortCircuit = true,
trim = true, minLength = "5", maxLength = "12")
public String getName() {
return name;
}
}
UrlValidator注释 - (验证译注):
这个验证检查一个字段是一个有效的URL。
public class Employee extends ActionSupport{
@UrlValidator(message = "Default message",
key = "i18n.key", shortCircuit = true)
public String getURL() {
return url;
}
}
验证注释 - (验证译注):
如果想使用多个相同类型的注释,这些注释必须嵌套在@Validations() 注释。
public class Employee extends ActionSupport{
@Validations(
requiredFields =
{@RequiredFieldValidator(type = ValidatorType.SIMPLE,
fieldName = "customfield",
message = "You must enter a value for field.")},
requiredStrings =
{@RequiredStringValidator(type = ValidatorType.SIMPLE,
fieldName = "stringisrequired",
message = "You must enter a value for string.")}
)
public String getName() {
return name;
}
}
CustomValidator注释 - (验证译注):
这个注解可以用于自定义验证。使用ValidationParameter的注释,以提供额外的 params.
@CustomValidator(type ="customValidatorName", fieldName = "myField")
转换注释 - (类型转换注释):
这是一个标记注释类型转换类型级别。转换注释必须应用在类型级别。
@Conversion()
public class ConversionAction implements Action {
}
CreateIfNull注释 - (类型转换注释):
这个注解设置类型转换CreateIfNull。必须应用在域或方法级CreateIfNull注解。
@CreateIfNull( value = true )
private List<User> users;
元素注释 - (类型转换注释):
这个注解设置元素进行类型转换。必须应用在字段域或方法级元素的注解。
@Element( value = com.acme.User )
private List<User> userList;
关键注释 - (类型转换注释):
这个注解设置进行类型转换的关键。必须应用在域或方法级的关键注解。
@Key( value = java.lang.Long.class )
private Map<Long, User> userMap;
KeyProperty注释 - (类型转换注释):
这个注解设置类型转换KeyProperty。必须应用在域或方法级KeyProperty注解。
@KeyProperty( value = "userName" )
protected List<User> users = null;
TypeConversion注释 - (类型转换注释):
这个注解的注解是用于类和应用程序的转换规则。注解可以应用于TypeConversion在属性和方法的级别。
@TypeConversion(rule = ConversionRule.COLLECTION,
converter = "java.util.String")
public void setUsers( List users ) {
this.users = users;
}
Struts2 注释类型的更多相关文章
- Struts2初学 struts2自定义类型转换器
一.问题的引出 Struts2的类型转换是基于OGNL表达式的,由于请求的参数都是字符串,而JAVA 本身属于强类型的的语言,这样就需要把请求参数字符串转换成其他类型. Struts ...
- struts2学习笔记之十一:struts2的类型转换器
Struts2的类型转换器 如何实现Struts2的类型转换器? * 继承StrutsTypeConverter * 覆盖convertFromString和convertToString 注 ...
- struts2结果类型
struts2结果类型: 结果类型 描述 前request域属性是否丢失 1 dispatcher 用于与jsp整合的结果类型.默认结果类型. 2 chain Action链式处理结果类型.前一个Ac ...
- struts2自定义类型转换器
首先,何为struts2的类型转换器? 类型转换器的作用是将请求中的字符串或字符串数组参数与action中的对象进行相互转换. 一.大部分时候,使用struts2提供的类型转换器以及OGNL类型转换机 ...
- Struts2的类型转换器
Struts2的类型转换器 如何实现Struts2的类型转换器? * 继承StrutsTypeConverter * 覆盖convertFromString和convertToString 注册类型转 ...
- struts2 自定义类型转化 第三弹
1.Struts2的类型转化,对于8种原生数据类型以及Date,String等常见类型,Struts2可以使用内建的类型转化器实现自动转化:但对于自定义的对象类型来说,就需要我们自己指定类型转化的的方 ...
- 注释类型 XmlType
@Retention(value=RUNTIME) @Target(value=TYPE) public @interface XmlType 将类或枚举类型映射到 XML 模式类型. 用法 @Xml ...
- [JavaWeb基础] 013.Struts2 自定义类型转换器
很多时候,我们在做web开发的时候经常要用到时间的转换器,Struts2给我们提供了一种类型转换器的接口.下面我们讲讲怎么实现吧. 1.首先我们要定义一个类型转换的类,继承自com.babybus.s ...
- 4.Struts2转向类型详解
struts2中提供了多种视图转向类型,类型由type属性指定,如: dispatcher:请求转发(默认值) redirect:重定向到页面 redirectAction:重定向到Action pl ...
随机推荐
- HDU 5673 Robot【卡特兰数】
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5673 题意: 有一个机器人位于坐标原点上.每秒钟机器人都可以向右移到一个单位距离,或者在原地不动.如 ...
- WPF中的简单水动画
原文 https://stuff.seans.com/2008/08/21/simple-water-animation-in-wpf/ 很多年前(80年代中期),我在一家拥有Silicon Grap ...
- 《C语言深度解剖》学习笔记之关键字
第一章 关键字 C语言共有32个关键字. 关键字 auto 声明自动变量 int 声明整型变量 long 声明长整型变量 char 声明字符型变量 float 声明浮点型变量 short 声明短整 ...
- CF1238E.Keyboard Purchase 题解 状压/子集划分DP
作者:zifeiy 标签:状压DP,子集划分DP 题目链接:https://codeforces.com/contest/1238/problem/E 题目大意: 给你一个长度为 \(n(n \le ...
- Python深入:Distutils发布Python模块
Distutils可以用来在Python环境中构建和安装额外的模块.新的模块可以是纯Python的,也可以是用C/C++写的扩展模块,或者可以是Python包,包中包含了由C和Python编写的模块. ...
- phpstorm2017破解版 2017.3.4 官网中文版
phpstorm2017破解版是一款强大的PHP编程工具,新云软件园提供phpstorm激活下载,最新版PhpStorm 2017正式版改进了PHP 7支持,改进代码完成功能,PhpStorm 是最好 ...
- 小程序中使用threejs
webgl调试 起初使用threejs 在小程序里面调试,明明是按着官方的文档来,但是会发现开发者工具上面会提示getContext,经过一翻摸索,发现webgl调试只能在手机端调试. 总结:webg ...
- tp5 select出来数据集(对象)转成数组
1.先在数据库配置文件中 //数据集返回类型 'resultset_type' => 'collection', 2.在使用时, 使用 toArray() 方法 //查询数据库 $news = ...
- HDU 1071
题意:就是求给你一个抛物线的三个点,第一个给定的点是抛物线的顶点,让你求直线p2p3与抛物线的定积分 思路:因为题目条件给了顶点,所以直接用抛物线的顶点式去求. 本弱弱数学太差.还得复习一下公式 #i ...
- tf.variable_scope 参数
最近在看TensorFlow的变量管理,发现很多代码中tf.variable_scope()参数的数量及意义还不太清楚,特此记录: def __init__(self, name_or_scope, ...