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类型转换、数据验证重要知识点的更多相关文章

  1. <转>ASP.NET学习笔记之MVC 3 数据验证 Model Validation 详解

    MVC 3 数据验证 Model Validation 详解  再附加一些比较好的验证详解:(以下均为引用) 1.asp.net mvc3 的数据验证(一) - zhangkai2237 - 博客园 ...

  2. SpringMVC学习笔记七:SpringMVC的数据验证

    SpringMVC支持JSR(Java Specification Requests, Java规范提案)303-Bean Validation数据验证规范,该规范的实现者很多,其中较常用的是 Hib ...

  3. java学习笔记——数据类型及类型转换

    数据类型分为: 1.引用类型(字符型); 2.基本数据类型(数值型); 以下为基本数据类型介绍(括号内的数字表示该类型所占据的字节数) a.整型 byte(8)   short(16)   int(3 ...

  4. struts2学习笔记(7)---数据验证之validateXxx()方法

    validateXxx()方法 上一篇文章写了使用Action的validate()方法,validate()仅仅能对action的所有方法进行验证.而要实现对action中特定的方法进行验证,就须要 ...

  5. 【学习笔记】Struts2 类型转换

    为什么需要类型转换 在基于HTTP协议的Web应用中 客户端请求的所有内容(表单中提交的内容等)都以文本编码的方式传输到服务器端但服务器端的编程语言(如Java)有着丰富的数据类型 如 int boo ...

  6. 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 ...

  7. java学习笔记(11) —— Struts2与Spring的整合

    1.右键 项目名称 —— MyEclipse —— Add Spring Capabilities 2.选取 Copy checked Library contents to project fold ...

  8. java学习笔记 (9) —— Struts2 国际化

    1.Test.java package com.i18n; import java.util.Locale; public class Test1 { public static void main( ...

  9. java学习笔记 (8) —— Struts2 实现上传

    1.新建upload.jsp <%@ page language="java" import="java.util.*" pageEncoding=&qu ...

随机推荐

  1. OpenStack JEOS 镜像

    JEOS:Just Enough Operating System 维基百科地址:http://en.wikipedia.org/wiki/Just_enough_operating_system O ...

  2. Android 之 AlertDialog 用户登录

    1:activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/androi ...

  3. AD:想两VIA在同一plane层不同连接(两VIA接同网络),一全连接、一花孔接,实现方法

    可以用room方法处理!

  4. C51系列RAM寄存器表

    特殊功能寄存器地址表 SFR 符号 字节 地址 位地址和位名称 D7 D6 D5 D4 D3 D2 D1 D0 P0口 P0 80H P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0. ...

  5. Android 自定义View(button)

    很多的Android入门程序猿来说对于Android自定义View,可能都是比较恐惧的,但是这又是高手进阶的必经之路,所有准备在自定义View上面花一些功夫,多写一些文章.先总结下自定义View的步骤 ...

  6. 如何实现室内Wi-Fi无线终端的精准定位

    如何实现室内Wi-Fi无线终端的精准定位 如何实现室内Wi-Fi无线终端的精准定位 随着商圈020的兴起,室内定位技术的也如百花争艳般不断涌现.但随着室内Wi-Fi网的架设普及,基于Wi-Fi定位技术 ...

  7. 【转】opencv检测运动物体的基础_特征提取

    特征提取是计算机视觉和图像处理中的一个概念.它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征.特征提取的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点.连续的曲线或者连 ...

  8. FTP服务器上删除文件夹失败

    很多人都知道:要删除FTP服务器上的文件夹时,必须确保文件夹下面没有其他文件,否则会删除失败! 可是,有些服务器考虑到安全等因素,通常会隐藏以点开始的文件名,例如“.test.txt”.于是,有的坏人 ...

  9. 面向对象CSS (OOCSS)

    新版 OOCSS 请关注 http://www.oocss.cc/ 时下流行面向对象,那么有没有可能把样式表也面向对象一下呢,将现在的CSS(Cascading Style Sheets层叠样式表)进 ...

  10. 数据持久化之CoreData

    再次回归博客园, 已经实属不易了, 面临这近期忙忙碌碌的项目开发, 虽然并不是完全的没有闲暇时间, 但是怎么说呢, 也有着各种的无奈与曲折, 面临这产品需求的不断变化和页面的不断更新, 对于一个程序员 ...