<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    struts 2.0 數據校驗的另一種方式

    com.test.action.user包下:
           SaveUserAction.java
          SaveUserAction-validation.xml

    SaveUserAction.java文件的內容:

    package com.test.action.user;

    import java.util.Iterator;
    import java.util.Map;
    import java.util.Set;

    import com.opensymphony.xwork2.ActionSupport;
    import com.test.bean.User;
    import com.test.service.UserService;

    public class SaveUserAction extends ActionSupport
    {
    private User user;
    private UserService service;

    public User getUser()
    {
       return user;
    }

    public void setUser(User user)
    {
       this.user = user;
    }

    public UserService getService()
    {
       return service;
    }

    public void setService(UserService service)
    {
       this.service = service;
    }

    @Override
    public String execute() throws Exception
    {
       this.service.save(this.user);

       return SUCCESS;
    }

    @Override
    @SuppressWarnings("unchecked")
    public void validate()
    {
       Map map = this.getFieldErrors();
       Set set = map.keySet();

       for (Iterator iter = set.iterator(); iter.hasNext();)
       {
        System.out.println(map.get(iter.next()));
       }
    }
    }

    SaveUserAction-validation.xml的文件內容:
      

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"    " <validators>
    <field name="user">
       <field-validator type="visitor">
        <param name="context">user</param>
        <param name="appendPrefix">true</param>
        <message>user's </message>
       </field-validator>
    </field>
    </validators>    

    com.test.bean包下的文件:
           User.java;
           User-user-validation.xml

    User-user-validation.xml文件的內容:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN" "

    <validators>
    <field name="firstname">
       <field-validator type="requiredstring">
        <message>required first name</message>
       </field-validator>
    </field>

    <field name="lastname">
       <field-validator type="requiredstring">
        <message>required last name</message>
       </field-validator>
    </field>

    <field name="age">
       <field-validator type="required">
        <message>required age</message>
       </field-validator>
       <field-validator type="int">
        <param name="min">1</param>
        <param name="max">150</param>
        <message>age should be between ${min} and ${max}</message>
       </field-validator>
    </field>

    </validators>

    還有一個問題,就是校驗信息會重復,在錯誤的情況下。由以下代碼可以測試:

    @Override
    @SuppressWarnings("unchecked")
    public void validate()
    {
       Map map = this.getFieldErrors();
       Set set = map.keySet();

       for (Iterator iter = set.iterator(); iter.hasNext();)
       {
        System.out.println(map.get(iter.next()));
       }
    }
    }

    解決方法:
          applicationContext.xml 文件中的配置action中加入:Struts 2.0 的action 是有狀態的 在spring 配置的action 中加上 scope="prototype";

    配置如下:<bean id="saveUserAction" class="com.test.action.user.SaveUserAction" scope="prototype">
    <property name="service" ref="userService"></property>
    </bean>

    posted on 2010-05-12 23:12 smallfa 閱讀(184) 評論(0)  編輯  收藏 所屬分類: SSH

    <2010年5月>
    2526272829301
    2345678
    9101112131415
    16171819202122
    23242526272829
    303112345

    導航

    統計

    公告

    smallfa
    博客園
    C++博客
    博客生活
    Blogjava
    足球博客
    微博
    Redsaga

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    相冊

    Ajax

    Blogs

    DB

    java

    Open source

    ORM

    Tools/Help

    vedio Tech

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲黄色一级毛片| 亚洲?V乱码久久精品蜜桃| 久久久亚洲精品无码| 亚洲天堂免费在线视频| 亚洲成a人片在线观看国产| 免费精品久久久久久中文字幕| 免费国产成人高清在线观看麻豆| 老司机亚洲精品影院在线观看| 国产99视频免费精品是看6| 美女裸体无遮挡免费视频网站| 免费人成视频在线观看不卡| 九九综合VA免费看| 狠狠亚洲狠狠欧洲2019| 色播在线永久免费视频网站| 亚洲AV日韩AV永久无码久久| 亚洲视频在线免费看| 四虎必出精品亚洲高清| 永久免费AV无码网站在线观看| 黄人成a动漫片免费网站| 亚洲午夜精品一级在线播放放| 中国一级毛片视频免费看| 香蕉视频在线观看亚洲| 18禁网站免费无遮挡无码中文| 亚洲精品理论电影在线观看| 亚洲精品成人区在线观看| 18禁在线无遮挡免费观看网站| 香蕉视频在线观看亚洲| 最近中文字幕免费mv视频7| 免费无遮挡无码视频在线观看| 国产亚洲精品精华液| 国产成人精品免费视| 看一级毛片免费观看视频| 三上悠亚亚洲一区高清| 99久久人妻精品免费二区| 亚洲国产乱码最新视频| 亚洲精品国产日韩无码AV永久免费网| 国产色爽免费无码视频| 亚洲人成未满十八禁网站| 国产成人精品曰本亚洲79ren| 日本在线看片免费人成视频1000| 亚洲精品自偷自拍无码|