java学习笔记 (2) —— Struts2类型转换、数据验证重要知识点
1、*Action.conversion-properties
如(point=com.test.Converter.PointListConverter)
具体操作类的配置文件
2、*Action.properties
如(invalid.fieldvalue.graduation=\u6bd5\u4e1a\u65e5\u671f\u8f93\u5165\u9519\u8bef)
具体字段错误提示信息的配置文件
2、struts.xml 中
<action name="register" class="com.test.action.RegisterAction">
<result name="success">/registerSuccess.jsp</result>
//当出现错误信息时,struts会自动查找当前Action的input标签,并执行跳转
<result name="input">/register.jsp</result>
</action>
3、struts.xml 标签说明
constant —— struts框架中需要使用哪些常量的标示说明,在类型转换部分可以用作配置全局类型转换的依据
include —— 包含的另一些配置文件
4、struts 局部类型转换错误配置方法
a) 在对应*Action的同级目录下,创建*.properties文件
b) 填写 invalid.fieldvalue.fieldname= 错误提示
5、struts 全局类型转换错误配置方法
a) 在struts.xml中添加 constant 标签
<constant name="struts.custom.i18n.resources" value="message"></constant>
b) 在 src 目录下创建message.properties文件
c) 填写xwork.default.invalid.fieldvalue=[0] error
6、native2ascii javac 字符转换为ascii码的方法
a) cmd —— nativce2ascii 源文件.txt 转换后文件.properties
7、类型转换不成功int值会被赋予0
8、无法进行类型转换时,struts2框架会自动通过addFieldError()将错误添加进去
9、Struts2 addActionError()
说明: Action级别的错误信息
操作:通过this.addActionError() 添加 错误信息,jsp页面通过<s:actionerror>页签显示错误信息
10、Struts2 addFieldError()
说明:字段级别的错误信息
操作:通过this.addActionError() 添加 错误信息,jsp页面通过<s:fielderror>页签显示错误信息
11、Struts2 标签中的theme="simple",可以去除掉默认的<tr><td>
12、Struts2 Action 中默认执行的方法是execute()[继承自ActionSupport] ,如果
需要给出具体方法,需要加上method="...."
13、Struts2 的检验框架
a) 在Action的同级目录下创建 *Action-validation.xml
b) 引入头文件信息
<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd">
c) Struts2 分为字段检验和非字段检验
c-1: 字段检验,我要检验谁,用谁去检验 <field>
c-2: 非字段检验 ,我用谁去检验,我去检验谁 <validator>
d) 配置xml文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd"> <validators>
//检验的字段
<field name="username">
//xwork-core —— default.xml 下查看可配置的type
// short-circuit —— 短路,如果为true,字段检验未通过时,后段代码不会执行
<field-validator type="requiredstring" short-circuit="true">
<param name="trim">true</param>
<message>username should not null</message>
</field-validator>
</field>
</validators>
e) 说明: 所有的message 添加到了fielderror中
14、Struts2 同样支持客户端验证
a) 不能将主题设置为simple
b) 将form 的 validate 改为true [onSubmit="return validate()"]
15、fieldError详解
fielderror 错误信息存放在LinkedHashMap中
LinkedHashMap 的key 是String 类型的,value 是ArrayList类型的
对于Action 级别的错误信息,实际上是放置在ArrayList中的
java学习笔记 (2) —— Struts2类型转换、数据验证重要知识点的更多相关文章
- <转>ASP.NET学习笔记之MVC 3 数据验证 Model Validation 详解
MVC 3 数据验证 Model Validation 详解 再附加一些比较好的验证详解:(以下均为引用) 1.asp.net mvc3 的数据验证(一) - zhangkai2237 - 博客园 ...
- SpringMVC学习笔记七:SpringMVC的数据验证
SpringMVC支持JSR(Java Specification Requests, Java规范提案)303-Bean Validation数据验证规范,该规范的实现者很多,其中较常用的是 Hib ...
- java学习笔记——数据类型及类型转换
数据类型分为: 1.引用类型(字符型); 2.基本数据类型(数值型); 以下为基本数据类型介绍(括号内的数字表示该类型所占据的字节数) a.整型 byte(8) short(16) int(3 ...
- struts2学习笔记(7)---数据验证之validateXxx()方法
validateXxx()方法 上一篇文章写了使用Action的validate()方法,validate()仅仅能对action的所有方法进行验证.而要实现对action中特定的方法进行验证,就须要 ...
- 【学习笔记】Struts2 类型转换
为什么需要类型转换 在基于HTTP协议的Web应用中 客户端请求的所有内容(表单中提交的内容等)都以文本编码的方式传输到服务器端但服务器端的编程语言(如Java)有着丰富的数据类型 如 int boo ...
- java学习笔记(12) —— Struts2 通过 xml /json 实现简单的业务处理
XML 1.引入dom4j-2.0.0.jar 2.引入jquery-1.8.2.js 3.新建common.js getInfo = function(){ $.post("getXmlA ...
- java学习笔记(11) —— Struts2与Spring的整合
1.右键 项目名称 —— MyEclipse —— Add Spring Capabilities 2.选取 Copy checked Library contents to project fold ...
- java学习笔记 (9) —— Struts2 国际化
1.Test.java package com.i18n; import java.util.Locale; public class Test1 { public static void main( ...
- java学习笔记 (8) —— Struts2 实现上传
1.新建upload.jsp <%@ page language="java" import="java.util.*" pageEncoding=&qu ...
随机推荐
- CCAN:C语言的模块仓库
实践中一门编程语言是否有用.好不好,不仅体现在语言本身,更在语言的生态系统:用的人多不多.社区是否活跃互帮互助.语言的相关库和框架质量如何,还有就是已有的模块的质量与数量. CPAN(Comprehe ...
- 转:窗口启用/禁用功能函数EnableWindow的使用
在非MFC环境中如何使控件或者窗口禁用呢?起初是想通过发送消息来实现,但找来找去都木有找到控件禁用的消息(也是是博主木有找到的缘故),所以只能另辟蹊径,使用 EnableWindow这个函数, 该函数 ...
- XAMPP的Apache服务器无法正常启动解决方案
XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建 XAMPP 软件站集成软件包.介绍什么的,参见百度百科http://baike.baidu.com/link?url=-UE ...
- Templates 模板:
Templates 模板: ########################温金 $template wj-flow01,"/data01/applog_backup/winfae_log/ ...
- word 生成目录
生成目录: (1)Ctrl+End,到达文档的最后一页: (2)"插入"菜单--引用--索引和目录(此时出现索引和目录对话框): (3)单击"目录"选项卡 a. ...
- java中一直说一个汉字使用两个字节,原来是不准确的
utf-8码的中文都是3字节的,而 gbk/gbk18030 是2字节的
- HDOJ 1334 Perfect Cubes(暴力)
Problem Description For hundreds of years Fermat's Last Theorem, which stated simply that for n > ...
- poj3177 Redundant Paths
Description In order to get from one of the F (1 <= F <= 5,000) grazing fields (which are numb ...
- Windows服务器Pyton辅助运维--03.安装Visual Studio 的 Python 开发插件 PTVS
PTVS (Python Tools for Visual Studio) http://pytools.codeplex.com/ 当前版本:2.1 RC PTVS (Python Tools fo ...
- 树形dp入门练习(hdu1011+hdu1061)
hdu1011 和 hdu1561类似,给定每个节点的花费以及价值,并且子节点必须在父亲节点取到以后才可以被取到 相当于是在树上进行的01背包 dp时考虑每一个子树 root和它的每一个儿子,状态转移 ...