1. 数据校验流程
    1. 校验数据的方式

      1. 重写execute方法在内部写校验代码
      2.  public class LoginAdminAction extends ActionSupport
        {
        private User user;
        @Override
        public String execute() throws Exception
        {
        //测试校验代码
        if("".equals(user.getUsername()))
        {
        addFieldError("msg", "用户名不能为空."); }
        if("".equals(user.getPassword()))
        {
        addFieldError("msg","密码不能为空."); }
        return "login";
        } }
      3. 重写validate()方法--这个action通用.
      4.  @Override
        public void validate()
        {
        //测试校验代码
        if("".equals(user.getUsername()))
        {
        addFieldError("msg", "用户名不能为空.");
        }
        if("".equals(user.getPassword()))
        {
        addFieldError("msg","密码不能为空.");
        }
        super.validate();
        }
      5. 编写validateXXX()方法-针对某个方法

      6.  public String login() throws Exception
        {
        Log4JFactory.getInstanceLogger(this).info("調用啦");
        return "success";
        } public void validateLogin()
        {
        //测试校验代码
        Log4JFactory.getInstanceLogger(this).info("validateLogin調用啦");
        if("".equals(user.getUsername()))
        {
        addFieldError("msg", "用户名不能为空.");
        }
        if("".equals(user.getPassword()))
        {
        addFieldError("msg","密码不能为空.");
        } }
      7. 使用struts2验证框架xml
        1. 验证与逻辑分离
        2. 提供代码可读性
        3. 命名规则
          1. actionName-validation.xml //action名称-validation.xml针对整个action
          2. actionName-person_update-validation.xml //action名称-方法名-validation.xml针对某个方法
        4. 文件存放路径
          1. 和action在同一个包下
        5. 文件格式
          1.  <!DOCTYPE validators PUBLIC
            "-//Apache Struts//XWork Validator 1.0.3//EN"
            "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd"> <validators>
            <field name="">
            //name 字段名称
            <field-validator type="">
            //指定校验规则
            <message>messge</message>
            </field-validator>
            </field>
            </validators>

struts2简单入门-数据校验的更多相关文章

  1. Struts2学习---简单的数据校验、访问Web元素

    1.简单的数据校验 在action里面我们已经给出了一个数据校验: public String execute() { if(user.getUsername().equals("usern ...

  2. Struts2中validate数据校验的两种常用方法

    本文主要介绍Struts2中validate数据校验的两种方法及Struts2常用校验器.  1.Action中的validate()方法 Struts2提供了一个Validateable接口,这个接 ...

  3. 6.Struts2简单类型数据的接受

    简单类型数据的接收 在Action类中定义与请求参数同名的属性, 即,要定义该属性的set方法,便能够使struts2自动接收请求参数并赋予同名属性. 简单类型数据的接受举例: 新建工程项目,名称为: ...

  4. 【java开发系列】—— struts2简单入门示例

    前言 最近正好有时间总结一下,过去的知识历程,虽说东西都是入门级的,高手肯定是不屑一顾了,但是对于初次涉猎的小白们,还是可以提供点参考的. struts2其实就是为我们封装了servlet,简化了js ...

  5. struts2简单入门

    框架是什么,框架有什么作用 框架 实现部分功能的代码. 作用 控制请求和响应. 相对于WEB项目的执行流程 struts2项目搭建流程 配置web.xml 配置前端控制器[核心控制器] ---一个fi ...

  6. struts2简单入门-配置文件-struts.xml

    struts.xml 作用:配置struts中的action,result,package,全局action,result,等等. 基本文件格式: <?xml version="1.0 ...

  7. struts2简单入门-执行流程

    简单的执行流程图

  8. struts2简单入门-OGNL表达式

    什么是OGNL表达式 Object-Graph Navigation Language的缩写. 可以遍历整个对象结构图,实现对象类型转换等功能的表达式. OGNL实际上是个Map集合,有一个上下文根对 ...

  9. struts2简单入门-关于Result标签Type属性的说明

    Result标签 作用 当action执行完毕,后要返回什么样的视图. Type属性 决定返回的是什么视图. struts-default.xml的Type属性的定义 <result-types ...

随机推荐

  1. python 项目自动生成requirements.txt文件

    主要使用目的: 任何应用程序通常需要设置安装所需并依赖一组类库来满足工作要求.通过requirements.txt可以一次性安装程序所需要和依赖的包. 为工程生成requirements.txt的两种 ...

  2. PTA 天梯赛练习 7-11 玩转二叉树-二叉树重建

    以前就思考过这个问题,但是没有深入的想过,这是一种叫二叉树重建的典型题目 如果给出中序和前序,求出后序遍历. 这道题则求的是交换儿子节点的层序遍历. 二叉树的重建应该怎么重建,首先我们知道,先根遍历, ...

  3. RocksDB系列二十二:RocksDB使用场景和特性

  4. ABP mysql

    SetSqlGenerator("MySql.Data.MySqlClient", new MySql.Data.Entity.MySqlMigrationSqlGenerator ...

  5. 第六十七天 js动画

    1.事件总结 鼠标事件 var box = document.querySelect('.box') // 1.点击事件 box.onclick = function(){ console.log(' ...

  6. python学习日记(内置函数)

    目前所有内置函数 http://www.runoob.com/python3/python3-built-in-functions.html *菜鸟教程* 内置函数分类 作用域相关globals(). ...

  7. MySQL数据目录(data)迁移

    因为系统分区的空间不足,添加了一块硬盘,挂载到/data目录下,把MySQL的数据目录(data)迁移过去. 1.停止MySQL服务: [root@zabbix mysql]# service mys ...

  8. CF765F Souvenirs

    CF765F Souvenirs [CF765F]Souvenirs 主席树 - CQzhangyu - 博客园 其实不用主席树 感觉像是离线问题 但是不能支持差分.分治又处理不了 考虑按照右端点排序 ...

  9. 从零开始学习微信小程序

    1.微信公众号和小程序的区别 公众号可以基于html5.vue.react.anguar开发,小程序只能用小程序开发语言. 小程序更接近于原生app. 借助jssdk调用手机功能强大. 开始: 2.创 ...

  10. CF226D The table

    题目链接 题意 给出一个\(n\times m\)的矩阵,可以把某些行和某些列上面的数字变为相反数.问修改那些行和哪些列可以使得所有行和所有列之和都为非负数. 思路 每次将负数的行或者列变为相反数.因 ...