Struts2.0表单标签

来源:互联网 发布:射频电路仿真软件 编辑:程序博客网 时间:2024/05/22 15:19

Struts2.0提供了功能强大的标签库

需要在JSP页面导入标签库

<%@ taglib prefix="s" uri="/struts-tags"%>

常用表单

标签说明

<s:form></.s:form>

<s:textfield>

<s:password>

<s:textarea>

<s:radio>

<s:checkbox>

<s:submit>

<s:reset>

<s:hidden>


action级别错误

字段级别错误


struts的表单验证处理:

JSP组织的页面:

 <s:form action="RegAction"  namespace="/" method="post"><%--这里的namespace和action与struts.xml文件组织是一样的--%>
  用户名:<s:textfield name="user.uname"></s:textfield><s:fielderror fieldName="uname_error" /><br/>

                                            <%--字段级别错误--%>
  密码:<s:password name="user.upass"></s:password><s:fielderror fieldName="upass_error" /><br/>

                                             <%--字段级别错误--%>

   出生日期:<s:textfield name="user.birthday"></s:textfield><br/>
  <s:submit value="提交" />
  </s:form>

RegAction组织的结构:

package com.mynews.action;

import com.mynews.entity.Users;
import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionSupport;

public class RegAction extends ActionSupport {
    /**
     *
     */
    private static final long serialVersionUID = 1L;
    
    
    private Users user;
    public Users getUser() {
        return user;
    }
    public void setUser(Users user) {
        this.user = user;
    }
    public void validate(){
        if("".equals(user.getUname())){
            super.addFieldError("uname_error", "用户名不能为空");
        }
        if(user.getUpass()==null||"".equals(user.getUpass())){
            super.addFieldError("upass_error", "密码不能为空");
        }           //验证失败时,会跳到input指定的页面
    }
    public String execute() throws Exception {
        // TODO Auto-generated method stub
        int ret=1;
        if(ret==1){
            return Action.SUCCESS;
        }
        return Action.INPUT;
    }

}

struts.XML组织的结构:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
    <constant name="struts.ui.theme" value="simple"/><!--去除struts2.0默认样式--!>
    <package name="default" namespace="/" extends="struts-default" >          
        <action name="RegAction" class="com.mynews.action.RegAction">
                <result>/ch01/login.jsp</result> <!--缺省值代表success  -->
                <result name="input">/ch01/register.jsp</result>
        </action>
    </package>
</struts>


原创粉丝点击