校验文件的片段如下:
(1)
<!-- 双精度浮点数验证器 风格 -->
<validator type="double">
<param name="fieldName">price</param>
<param name="minExclusive">0.0</param>
<message>橡升该值必须大于并且不等于0</message>
</validator>
(2)
<!-- 字段验证器 风格 -->
<field name="price">
<field-validator type="double">
<param name="minExclusive">0.0</param>
<message>该值必须大于并且不等于0</message>
</field-validator>
</field>拆裤
根据你校验整个Action类,还是Action类里的具体actionName,命名为ActionClassName-validation.xml中,而把只有某方法具有的校验放在各自的ActionClassName-actionName-validation.xml中,放到Action类目录下就可以了。
当然上面说得是Struts 2服务器端校验(只加JS校验不可行,因为可以禁用JS给绕过去)。
如果加js校验就比较简单了,可以限制输入框中只能输入数字和小数点(这可以用window.event.keyCode在keyPress事件里判断),最后用parseFloat(value)>0就可以了。
private File imgFile //这个是控件的name,皮友镇你自己命名private String imgFileFileName //这个是文件名,Struts2会自动处理,按照Struts2约定命名即可
private String imgFileContentType //这个是文件类型,如 image/jpg,按照Struts2约定命名即可
验证文件:
private boolean isImageFile() {boolean isImage = false
String[] imgExts = {".gif", ".jpg", ".jpeg",".bmp", ".png"}
for(String ext : imgExts) {
if(imgFileFileName.toLowerCase().endsWith(ext)) {
燃粗 isImage = true
告局 }
}
return isImage
}
也可以直接在配置文件中拦截。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)