Aggavara

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

下面对SAStruts使用的注释(Annotation)进行说明。

一般类型的注释

一般类型的注释。

Execute注释

对执行方法的注释。 执行方法的详细请参考这里

validator元素(可选)

指定验证注释是否有效。默认为有效(true)。true的时候,必须指定input元素。 验证的详细请参考这里

validate元素(可选)

指定验证方法的方法名。 検証メソッドの名前を指定します。 使用时必须指定input元素。 验证方法的详细,请参考这里

多个验证方法可以用逗号隔开。按照从左到右的顺序,依次执行定义的验证方法。 如果像这样定义validate="validate, @, validate2"、 在执行完validate方法后,将执行注释式的验证,然后再执行validate2方法。

input元素(可选)

验证结果为NG时跳转的页面,validator为true或者指定了validate元素的时候,必须指定。 跳转路径可以像実行执行方法的返回值然后加上urlPattern元素一样可以添加参数({参数名})。

saveErrors元素(可选)

验证结果为NG时,指定ActionMessages保存的场所。 默认为SaveType.REQUEST。 如果保存在Session里,指定为SaveType.SESSION。

urlPattern要素(可选)

调用urlPattern一致的方法。 默认为方法名
URLがhttp://localhost:8080/sa-struts-tutorial/employee/edit/の場合、
这回的例子为edit()。

urlpattern可以指定{参数名},URL和{}一致的部分作为参数的值取得。 例如,如下的EmployeeAction#edit()定义。

@Execute(urlPattern = "edit/{id}")
public String edit() {
    ...
}

访问http://localhost:8080/sa-struts-tutorial/employee/edit/1时, 参数id的值设为1,然后调用edit()方法。

roles元素(可选)

可以设定调用执行方法必须的角色。 可以用逗号分割指定多个角色。 没有指定的时候,不进行检查。

@Execute(..., roles = "aaa,bbb")
public String edit() {
    ...
}

如果NG的时候抛出异常org.seasar.struts.exception.NoRoleRuntimeException。

stopOnvalidationError元素(可选)

指定验证出错时放弃后续的验证。 默认为true,如果为false时,validator等发生错误也继续进行后续的验证。

removeActionForm元素(可选)

指定执行方法正常结束时,是否删除Session里保存的ActionForm。 默认为false,不删除。

reset元素(可选)

指定reset方法的方法名。默认为rest。

redirect元素(可选)

指定是否进行重定向。 默认为false,不进行重定向。

ActionForm注释

指定ActionForm的注释。Action的详细信息请参照这里

验证用的注释

使用commons validator的验证用的注释。

Required注释

是否必须检测的注释。

msg元素(可选)

指定验证NG时的错误信息。 默认为@Msg(key = "errors.required")。@Msg的详细,请参考这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

Validwhen注释

确认条件是否一致的注释。必需antlr.jar。

test元素(可选)

指定条件。 自己的属性用*this*。

如果要检测(validwhen1Text)有值,并且自己也有值可以按照如下进行指定。

@Validwhen(test = "((validwhen1Text == null) or (*this* != null))",
    msg = @Msg(key = "errors.required.other"),
    args = @Arg(key = "validwhen1Text", resource = false, position = 1))
msg元素(必须)

指定验证为NG时的信息。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

args元素(可选)

指定消息的参数数组。@Arg的详细信息请参照这里。 不要忘记指定@Arg的position元素。

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

Minlength注释

指定字符串最小长度。

minlength元素(必须)

字符串的最小长度。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.minlength")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

arg1元素(可选)

指定消息的第2个变量。 默认为minlength元素指定的值。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

Maxlength注释

字符串的最大长度。

maxlength元素(必需)

字符串的最大长度。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.maxlength")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

arg1元素(可选)

指定消息的第2个变量。 默认为maxlength元素指定的值。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

Minbytelength注释

字节的最小长度。

minbytelength元素(必须)

字节的最小长度

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.minbytelength")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

arg1元素(可选)

指定消息的第2个变量。 默认为minbytelength元素指定的值。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

Maxbytelength注释

字节的最大长度。

maxbytelength要素(必須)

字节的最大长度。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.maxbytelength")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

arg1元素(可选)

指定消息的第2个变量。 默认为maxbytelength元素指定的值。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

Mask注释

和正则表达式是否一致。必须jakarta-oro.jar。

mask元素(必须)

指定正则表达式。

指定验证为NG时的信息。 默认为@Msg(key = "errors.invalid")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

args元素(可选)

指定消息的参数数组。@Arg的详细信息请参照这里。 不要忘记指定@Arg的position元素。

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

IntRange注释

指定整数范围的注释。

min元素(必须)

最小值。

max元素(必须)

最大值。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.range")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

arg1元素(可选)

指定消息的第2个变量。 默认为min元素指定的值。@Arg的详细信息请参照这里

arg2元素(可选)

指定消息的第3个变量。 默认为max元素指定的值。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

LongRange注释

指定长整形范围的注释。

min元素(必须)

最小值。

max元素(必须)

最大值。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.range")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

arg1元素(可选)

指定消息的第2个变量。 默认为min元素指定的值。@Arg的详细信息请参照这里

arg2元素(可选)

指定消息的第3个变量。 默认为max元素指定的值。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

FloatRange注释

指定单精度实数范围的注释。

min元素(必须)

最小值。

max元素(必须)

最大值。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.range")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

arg1元素(可选)

指定消息的第2个变量。 默认为min元素指定的值。@Arg的详细信息请参照这里

arg2元素(可选)

指定消息的第3个变量。 默认为max元素指定的值。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

DoubleRange注释

指定双精度实数范围的注释。

min元素(必须)

最小值。

max元素(必须)

最大值。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.range")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

arg1元素(可选)

指定消息的第2个变量。 默认为min元素指定的值。@Arg的详细信息请参照这里

arg2元素(可选)

指定消息的第3个变量。 默认为max元素指定的值。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

ByteType注释

验证能否转换成Byte型的注释。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.byte")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

ShortType注释

验证能否转换成Short型的注释。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.short")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

IntegerType注释

验证能否转换成Integer型的注释。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.integer")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

LongType注释

验证能否转换成Long型的注释。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.long")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

FloatType注释

验证能否转换成Float型的注释。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.float")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

DoubleType注释

验证能否转换成Double型的注释。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.double")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

DateType注释

验证能否转换成Date型的注释。

datePattern元素(可选)

指定日期的格式。

datePatternStrict元素(可选)

指定严格的日期格式。 比如 指定yyyy/MM/dd的时候。2008/01/01可以。2008/1/1月份和日期的行数不对NG。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.date")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

CreditCardType注释

验证信用证号的注释。 号码不能带-。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.creditcard")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

EmailType注释

验证Email地址的注释。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.email")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

UrlType注释

验证URL地址的注释。

allowallschemes元素(可选)

是否允许所有的Schemes。 默认为false(不允许)。

allow2slashes元素(可选)

是否允许双斜线(//)。 默认为false(不允许)。

nofragments元素(可选)

是否允许URL的分割(包含#)。 默认为false(不允许)。

schemes元素(可选)

指定可以的Scheme。复数的情况下使用逗号分割。 默认为http,https,ftp。

msg要素(オプション)

指定验证为NG时的信息。 默认为@Msg(key = "errors.url")。@Msg的详细信息请参照这里

arg0元素(可选)

指定消息最开始的变量。 默认是参数名。 如果需要进行I18N对应的话,在信息资源中追加
labels.参数名=xxx。@Arg的详细信息请参照这里

target元素(可选)

需要进行验证的执行方法名。 执行方法为复数的时候,用逗号分隔。

Msg注释

指定消息的注释。

key元素(必须)

resource元素为true的时候, 指定信息资源里存在的key。resource元素为false的时候,指定信息。

resource元素(可选)

指定在信息资源里定义的信息。 默认为true(已经定义)。

bundle元素(可选)

指定resourceBundle。

Arg注释

指定信息参数的注释。

key元素(必须)

resource元素为true时, 指定在信息资源里定义好的key。resource为false时,指定变量。

像@Arg(key = "${var:minlength}", resource = false)这样,var:后面指定变量名,变量的值作为参数被利用。 変数名を指定することで、変数の値をメッセージの引数として利用できます。

resource元素(可选)

指定信息资源里定义的参数。 默认为true(已经定义)。

bundle元素(可选)

指定resourceBundle。

position元素(可选)

指定参数的位置。默认从0开始。

Validator注释

验证用的注释。验证用的msg、arg0, arg1, ..., args, target等元素,既定的值进行处理。 其他的元素,作为变量。

value元素(必须)

指定validator-rules.xml里定义的标签validator的name属性的值。

posted on 2012-10-09 11:14  Aggavara  阅读(996)  评论(0编辑  收藏  举报