|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
微软什么都提供了。你可以试想一下,如果你是新手,你是希望你点一下按钮程序就能运行那,还是想自己一点一点的组织结构,然后打包发部,调错再打包......
在Struts2中最复杂的考证数据的办法是利用validate。我们从ActionSupport类的源代码中能够看到,ActionSupport类完成了一个Validateable接口。这个接口只要一个validate办法。假如Action类完成了这个接口,Struts2在挪用execute办法之前起首会挪用这个办法,我们能够在validate办法中考证,假如产生毛病,能够依据毛病的level选择字段级毛病,仍是举措级毛病。而且可以使用addFieldError或addActionError到场响应的毛病信息,假如存在Action或Field毛病,Struts2会前往“input”(这个其实不用开辟职员写,由Struts2主动前往),假如前往了“input”,Struts2就不会再挪用execute办法了。假如不存在毛病信息,Struts2在最初会挪用execute办法。
这两个add办法和ActionErrors类中的add办法相似,只是add办法的毛病信息必要一个ActionMessage对象,对照贫苦。除到场毛病信息外,还可使用addActionMessage办法到场乐成提交后的信息。当提交乐成后,能够显现这些信息。
以上三个add办法都在ValidationAware接口中界说,而且在ActionSupport类中有一个默许的完成。实在,在ActionSupport类中的完成实践上是挪用了ValidationAwareSupport中的响应的办法,也就是这三个add办法是在ValidationAwareSupport类中完成的,代码以下:- privatefinalValidationAwareSupportvalidationAware=newValidationAwareSupport();
- publicvoidaddActionError(StringanErrorMessage)
- {validationAware.addActionError(anErrorMessage);
- }
- publicvoidaddActionMessage(StringaMessage)
- {
- validationAware.addActionMessage(aMessage);
- }
- publicvoidaddFieldError(StringfieldName,StringerrorMessage)
- {
- validationAware.addFieldError(fieldName,errorMessage);
- }
复制代码 上面我们来完成一个复杂的考证程序,来体验一个validate办法的利用。
先来在Web根目次创建一个主页面(validate.jsp),代码以下:- <%@pagelanguage="java"import="java.util.*"pageEncoding="GBK"%>
- <%@taglibprefix="s"uri="/struts-tags"%>
- <html>
- <head>
- <title>考证数据</title>
- </head>
- <body>
- <s:actionerror/>
- <s:actionmessage/>
- <s:formaction="validate.action"theme="simple">
- 输出内容:<s:textfieldname="msg"/>
- <s:fielderrorkey="msg.hello"/>
- <br/>
- <s:submit/>
- </s:form>
- </body>
- </html>
复制代码 <p>
java是一种面向对象的编程语言,优点是可移植性比较高,最初设计时就是本着一次编写到处执行设计的。可以开发各种应用程序和游戏,不过速度没有c++快,所以一般是不用java来编写应用程序和电脑游戏。 |
|