现在的位置: 首页 > 综合 > 正文

毫无废话: 从0开始一点一滴用java开发自己的B/S模式程序-5.3

2013年10月01日 ⁄ 综合 ⁄ 共 2113字 ⁄ 字号 评论关闭

(.........)

用来处理数据的action

UserAction.java

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionErrors;

import org.apache.struts.action.ActionForm;

import org.apache.struts.action.ActionForward;

import org.apache.struts.action.ActionMapping;

import org.apache.struts.actions.DispatchAction;

public class UserAction  extends DispatchAction

{

    public ActionForward execute(  ActionMapping mapping,

                                    ActionForm form,

                                    HttpServletRequest request,

                                    HttpServletResponse response)

           throws Exception

       {

           //获取页面表单信息

           UserForm uForm = (UserForm)form;

           //from中获得已经被提交的两个数据

           String temp_str1 = uForm.getStr1();

           String temp_str2 = uForm.getStr2();

      

           String temp_strAdd = temp_str1+temp_str1;

           //把处理的结果放到form中去

uForm.setStrAdd(temp_strAdd);

           if(!"".equals(temp_str1)&&!"".equals(temp_str2))

           {

              return mapping.findForward("ok");

           }

           else

           {

              return mapping.findForward("err");

           }

       }

}

赶快运行看看你的结果哦:

把你的tomcat再次启动一下,在你的ie地址拦输入:

http://localhost:8080/user/in.jsp

提示你注意的几个地方

1struts-config.xml

<action path="/execute"

               type="UserAction"

               name="userForm"…………execute   UserAction   userForm

分别和

in.jsp<html:form action="execute.do" method="post">execute.do

    javaUserAction.class 

struts-config.xml <form-bean name="userForm"……….userForm

success.jsp<bean:write name="userForm"…userForm

2struts-config.xml

<form-bean name="userForm"      type="UserForm">UserForm

javaUserForm.class

3form中看到

  str1str2strAdd了吗?

  in.jspsuccess.jsp中是都找到了堑挠白恿四兀?/SPAN>

明白了没有啊?

哦,原来是这样的。in.jspstr1str2的值放到form中去了,然后aciton又利用get方法把他们取出来处理好了后把结果通过set方法再放到formstrAdd中去了,最后呢success.jsp再次把form中的strAdd取出来显示给你看,是这样吧??!!

就是这样的过程,form成了一个把数据保存(这种保存不是永久的)起来的“仓库”,action成了一个处理并加工数据的“工厂”。他们联合起来提供数据的全套服务给前台的jsp页面了。好了,我要说的已经说完了,关于这个例子,我只有这么多要告诉你。

哦,忘了,不好意思。为什么当页面的“submit”类型的按钮按下时候,action中的execute方法会被执行呢?哈哈,这就是struts的优点啊!把execute这个方法名该为“myDog”可以吗?现在你还不可以,以后我会告诉你怎么可以的啦。。

抱歉!评论已关闭.