码迷,mamicode.com
首页 > 其他好文 > 详细

Struts(五)

时间:2016-07-07 00:53:35      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:

前端和后端验证
    1.前端:用户体验
    2.保证程序的安全性
    
================================验证框架==========================
登陆验证:
    1.继承ActionSupport
    2.调用validate()
    3.配置struts.xml文件
validate() 有缺陷 --> 如,不能进行注册的特有验证
    调用Action的任务方法时,validate()会默认执行,可以验证一些通用规则。

解决方案:
    validateXxx():指定需要处理请求方法,【Xxx=指定处理请求的方法】
        执行顺序:(与代码先后顺序无关)
            validateXxx() --> validate() --> 方法
            
validate()或者validateXxx() 存在不足 --> 验证规则复杂,实现过程繁琐;Action类代码臃肿

解决方案:
    使用Struts 2提供的验证框架
        1.集成日常开发常用的数据校验功能
        2.多种类型校验器的集合
            校验器类型            校验器名称            说    明
            必填校验器            required        字段不能为空
            必填字符串校验器    requiredstring    字段值不能为空长度要大于0
            整数校验器            int                字段的整数值的范围
            字符串长度校验器    stringlength    字段值的长度的范围
            正则表达式校验器    regex            字段是否匹配一个正则表达式
            字段表达式校验器    fieldexpression    字段必须满足一个逻辑表达式
            日期校验器            date            日期输入是否在指定的范围内
            双精度校验器        double            字段值必须是双精度类型
        3.步骤:
            编写Action --> 配置Action --> 编写表单 --> 编写验证文件和校验规则
            
            验证文件:
                a.文件类型xml格式
                b.命名规则:ClassName.validation(Action类名);ClassName.alias.validation(struts.xml中Action类名)
                c.存放位置:与Action位于同一个包下

实现数据验证流程图:图片
================================国际化和本土化==========================
国际化(Internationalization:I18N)
    使程序在不做任何修改的情况下,可以在不同国家或地区以及不同语言环境下,按照当地的语言和格式习惯显示字符

本地化(Localization:L10N)
    一个国际化的程序,当它运行在本地机器时,能够根据本地机器的语言和地区设置显示相应字符
    
实现国际化思路:
    1.将程序中的提示信息、错误信息等放在资源文件中,为不同国家和地区编写对应资源文件
    2.资源文件由很多key-value组成,key保持不变,value随国家和地区不同而不同
    3.这些资源文件使用共同的基名,通过在基名后面添加语言代码、国家和地区代码来进行区分
        资源文件名                                    说    明
        ApplicationResources_en.properties        所有英文语言的资源
        ApplicationResources_zh.properties        所有的中文语言的资源
        ApplicationResources_zh_CN.properties    针对中国大陆的、中文语言的资源
        ApplicationResources_zh_HK.properties    针对中国香港的、中文语言的资源
        ApplicationResources.properties            默认资源文件,如果请求的资源文件不存在,将调用它的资源进行显示

资源文件的范围:(查找顺序:Action --> package --> 全局)
    1.全局资源文件
        a.所有包的所有Action类都可以访问
        b.导致资源文件变得非常庞大臃肿,不便于维护
        
    2.包范围资源文件
        a.对应包下创建package_language_country.properties
        b.处于该包及子包下的action才可以访问该文件

    3.Action范围资源文件
        a.命名格式ActionClassName_language_country.properties
        b.只有单个Action可以访问

validate() 有缺陷

转发本鞥是redirect

OGNL与EL不能混用

Struts(五)

标签:

原文地址:http://www.cnblogs.com/ivy-xu/p/5648395.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!