Struts2笔记 – 简单数据验证
本文由发表于6年前 | J2EE | 暂无评论 |  被围观 3,955 views+
1、下面是JSP页面的编写:2、Action的编写:

这里通过Struts2的UI验证数据。

首先引入<s:head />标签,该标签会自动生成Struts2标签需要的JS和CSS文件的引入标签。这样就可以使用Struts2中提供的验证了。

使用了Struts2的表单之后并不需要使用任何的HTM中的table标签,因为Struts2会自动生成需要的tables。

1、下面是JSP页面的编写:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<s:head />
</head>
<body>
<s:form action="LoginAction ">
    <s:textfield name="username" lable="Username" />
    <s:password name="password" lable="Password" />
    <s:submit value="Login" />
</s:form>
</body>

我们这样配置struts.xml文件:

<package name="default" namespace="/" extends="struts-default">
        <action name="LoginAction" class="com.user.LoginAction">
            <result name="success">
                /HelloWorld.jsp
            </result>
        </action>
</package>

当我们点击Login按钮时,请求就转到LoginAction。

这里的defalut包我们继承了struts-default,而这个struts-default包中包含了一系列的定义在defaultstack中的拦截器。这个struts-default包定义在struts-default.xml文件中。

一些最常用的拦截器就放在struts-default package中的defaultstack里面。

2、Action的编写:

我们的LoginAction继承了ActionSupport,使得他很好的继承了ActionSupport中对于一些common tasks(common tasks分配在各个拦截器中)的默认实现。

接下来是编写LoginAction:

public class LoginAction extends ActionSupport{
    private String username;
    private String password;
    public LoginAction(){}

    public String execute(){
        return SUCCESS;
    }

    public void validate(){
        if(getUsername().length() == 0){
            addFieldError("username", "User Name error");
        }
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

}

注意这里有一个validate()和addFieldError()方法;上面也讲到了实现了ActionSupport之后便会继承那些默认拦截器的默认实现。而这个validate()方法是workflow拦截器中的一个方法。workflow拦截器会判断action是否实现了Validateable接口。如果实现了,workflow拦截器就会调用validate()方法。validate()方法并没有返回任何错误,而是通过ValidationAware接口把错误信息存储起来。而addFieldError()方法也是workflow拦截器中的一个方法。

除了文章中有特别说明,均为IT宅原创文章,转载请以链接形式注明出处。
本文链接:http://www.itzhai.com/the-struts2-notes-simple-data-validation.html
关键字:
arthinking Java技术交流群:280755654,入门群:428693174 more
分享到:
 
2011 6/19
如果您有更好的原创技术博文或者观点,欢迎投稿:admin@itzhai.com,或者关注订阅左侧浮动面板的微信号订阅IT宅itread)发送消息。
文章评论
    没有评论
给我留言

有人回复时邮件通知我
J2EE的相关文章
随机文章 本月热门 热评
1 Goagent连接超时解决方法,以及如何更流畅的使用Google搜索 2014/6/4
2 jQuery中使用正则表达式验证电子邮件 2011/5/11
3 操作系统接口-用户接口 程序接口 系统调用 2011/6/30
4 Chrome插件开发 – UI外观 2013/6/4
5 使用Eclipse开发Java Web过程中Debug调试的使用方法 2011/9/10
6 软件工程学概述-软件工程 软件危机 软件过程 2011/7/1
友情推荐 更多
破博客 文官洗碗安天下,武将打怪定乾坤。多么美好的年代,思之令人泪落。
Mr.5's Life 白天是一名程序员,晚上就是个有抱负的探索者
行知-追寻技术之美 关注大数据,分布式系统
我爱编程 编程成长轨迹
Cynthia's Blog 学习笔记 知识总结 思考感悟
 
猜您喜欢
欢迎关注我的公众号 IT宅
关于IT宅 文章归档

IT宅中的文章除了标题注明转载或有特别说明的文章,均为IT宅的技术知识总结,学习笔记或随笔。如果喜欢,请使用文章下面提供的分享组件。转载请注明出处并加入文章的原链接。 感谢大家的支持。

联系我们:admin@itzhai.com

Theme by arthinking. Copyright © 2011-2015 IT宅.com 保留所有权利.