测试struts1遇到的一些问题

 

    昨天看到同学在做struts,本来以为挺简单的东西,没想到自己都忘得差不多了……写配置文件时,name、type等等各表示什么,一下子还搞不清楚了……所以还得多做多练才行!

    早上试着用struts1做了一个简单的登录功能,遇到的问题:

 

    1、LoginAction继承Action,在覆写execute方法时,稍不注意,传错了参数,这是个神不知鬼不觉的错误……

        (1)public ActionForward execute(ActionMapping mapping, ActionForm form,
                           ServletRequest request, ServletResponse response) throws Exception

        (2)public ActionForward execute(ActionMapping mapping, ActionForm form,
                      HttpServletRequest request, HttpServletResponse response)  throws Exception

         看到区别了吗?request和response应当使用带有http协议的!

 

    2、试着让LoginAction用继承DispatchAction的方法,我简单的总结为三个步骤:

         第一步:将jsp页面中的url后加上“method=方法名x”,form的method属性值必须为post,不能为get;

         第二步:在struts-config.xml的配置文件的action标签中加上parameter="method";

         第三步:在action中将需要执行的方法的方法名改为第一步中的“方法名x”(我的做法是,先覆盖execute方法,然后更改自己想要的方法名)。

        (当然,上面的method的只是个标识,可以换成其他的,如:action、do等。)

        (对于为什么用DispatchAction就只能用post,这点还没弄清楚原因,只是用了get就会出现“does not contain handler parameter named 'method'”的错误)

    

    3、还简单的测试了一下struts1的html标签,在使用时,课本上提到,应该将标签的dtd文件的uri先到web.xml中用<taglib></taglib>标签注册,而我使用的时候,省去了这个步骤,直接在jsp页面中添加<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>,也能使用,还没遇到问题……

 

    总的来说,算是简单的复习了一遍struts1的简单流程,使用过了struts2及struts2的标签库,感觉struts2要比struts1有了更大的优越性,使用起来更顺手!

 

 

简单的附上struts-config.xml的配置:

 

<?xml version="1.0" encoding="ISO-8859-1" ?>

<!DOCTYPE struts-config PUBLIC
          "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
          "http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">

<struts-config>

 

<!-- Action -->
 <form-beans>
  <form-bean name="userForm" type="form.UserForm"></form-bean>
 </form-beans>

 <action-mappings>
  <action path="/login" name="userForm" type="action.LoginAction">
   <forward name="success" path="/info.jsp"></forward>
  </action>
 
<!-- DispatchAction -->  
  <action path="/login2" name="userForm" type="action.Login2Action" parameter="do">
   <forward name="success" path="/info.jsp"></forward>
  </action> 
</action-mappings>
 
</struts-config>

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值