快速业务通道

Struts2表单请求流程(一) - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14

Struts2表单请求流程(一)

时间:2011-09-24

Struts2框架出来有段时间了,终于开始学习Struts了,也写点东西记录下自己的历程

此文主要来自www.blogjava.net/Max的实例,自己是初学,自己动手实践真的很有趣,有不对的地方希望大家给有指正。

首先login.jsp页面表单: <s:form action="login" method="post">     <s:textfield name="username" label="USERNAME" tooltip="Enter Your UserName"></s:textfield>     <s:password name= "password" label="PASSWORD" tooltip="Enter Your PassWord"></s:password>     <s:submit label="login"></s:submit> </s:form>

struts.xml文件action配置:

<action name="login" class="com.bulktree.struts2.LoginAction">       <result name="success">/welcome.jsp</result>       <result name="input">/login.jsp</result>     </action>

处理表单的LoginAction.java类文件:

package com.bulktree.struts2; import com.opensymphony.xwork2.ActionSupport; public class LoginAction extends ActionSupport {   private String username;   private String password;   public String getUsername() {     System.out.println("******getUsername()*****");     return username;   }   public void setUsername(String username) {     System.out.println("*****setUsername()*****");     this.username = username;   }   public String getPassword() {     System.out.println("******getPassword()*****");     return password;   }   public void setPassword(String password) {     System.out.println("******setPassword******");     this.password = password;   }   @Override   public String execute() throws Exception {     System.out.println("*****execute()*****");     return SUCCESS;   }   @Override   public void validate() {     System.out.println("******validate******");     if(null == username || username.length() < 5) {       this.addFieldError("username","USERNAME ERROR");     }     if(null == password || password.length() < 5) {       this.addFieldError("password","PASSWORD ERROR");     }   } }

Struts2表单请求流程(一)(2)

时间:2011-09-24

显示页面welcome.jsp

YOUR USERNAME:<FONT size="5" color="red"><s:property value="username"/></FONT><br>   YOUR PASSWORD:<FONT size="5" color="red"><s:property value="password"/></FONT><br>

控制台输出信息:

******setPassword****** //set赋值操作

*****setUsername()***** //set赋值操作

以上有struts2框架自动执行

******validate****** //表单验证

*****execute()***** //业务逻辑

以上有struts2框架自动执行

******getUsername()***** //get方法得到值返回到welcome.jsp页面

******getPassword()***** //get方法得到值返回到welcome.jsp页面

客户端输入login.jsp表单传回服务器时action="login" 请求转发到struts.xml 匹配 name="login" class="com.bulktree.struts2.LoginAction" 找到处理请求的LoginAction类,进行自动set方法赋值,赋值后自动的执行 String execute()方法,返回String类型,默认为SUCCESS,(即struts.xml文件里action 的name属性默认为success)根据返回的String的值,决定执行哪个页面

<result name="success">/welcome.jsp</result> “/”表示绝对路径

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号