Struts入门文章系列(链接)及学习笔记

虽然是很早以前的文章,但入门还很不错,由浅入深,开始的示例很简单,只要仔细看看代码,还是有不少收获的。

第一篇:[中文]你的第一个struts应用程序
  http://www.fawcette.com/China/Articles.aspx?ID=123&OON=Old
简化了一切能简化的,只是给出了一个简单的登陆,验证,退出。说明了Action最简单的用法(虽然不规范),和需要配置的几个xml文件。看源代码的时候建议和下一篇一起看。
==========================
第二篇:[中文]Struts应用程序的流程控制
  http://www.fawcette.com/China/Articles.aspx?ID=134&OON=Old
告诉你如何运行第一个程序,并做了较详细的分析。
==========================
第三篇:[中文]用ActionForward优化你的Struts应用程序
  http://www.fawcette.com/China/Articles.aspx?ID=135&OON=Old
就是详细介绍了一下ActionForward,建议自己在第一个应用程序上自己动手修改一下,加深点印象。
==========================
第四篇:[中文]用ActionMapping构建漂亮的Struts应用程序
  http://www.fawcette.com/China/Articles.aspx?ID=136&OON=Old
介绍了Struts中简化编程和提高灵活性的几个功能:
1。在action标签中包含froward标签,供action跳转。使用
mapping.findForward(name);
2。在Struts-config中配置下面标签可实现直接跳转。
<action path="/viewSecret" forward="/viewSecret.jsp"/>
==========================
第五篇:[英文]Strut an ActionForm For All to See
http://www.fawcette.com/javapro/2002_10/online/servletsjsp_bkurniawan_10_15_02/
介绍了Struts的ActionForm
要使用ActionFrom,要完成如下几个步骤:
1。创建一个对应JSP中form的类,继承ActionForm类。
2。配置struts-config.xml的from-bean,例如:
  <form-beans>
    <form-bean name="loginForm"
type="com.javapro.struts.LoginForm"/>
  </form-beans>
3。配置struts-config.xml,与一个Action类关联,见下面的黑体部分
    <action path="/login" 
      type="com.javapro.struts.LoginAction"
      name="loginForm" <--在form-beans里面定义的form-bean
      scope="request" <--Action Form存在的范围
input="/login.jsp"
/> <--如果ActionForm的validate方法返回错误,则转到这个页面
一个From包含以下内容:
1。表单中内容get/set方法(Eclipse可以自动生成这些方法,比较方便。eclipse3.1。)
2。重载ActionForm的reset方法。(传给Action类之前自动调用)
3。可以重载validate方法。(传给Action类之前自动调用)
在ActionFrom中通过下面这样类型语句来获得表单中的数据
    String userName = ((LoginForm) form).getUserName();
传进来的是ActionFrom型的对象,需要自己强制类型转换一下。
form提交到ActionForm的流程
form Post到服务器->ActionServlet根据"/login"在struts-config中查找对应的Action->根据Action中的name属性找对应的FormBean->查找该实例,没有则创建一个。将form中的内容赋给该实例->传给ActionForm
==========================
第六篇:[英文]Grace Under Errors
http://www.fawcette.com/javapro/2002_10/online/servletsjsp_bkurniawan_10_28_02/
Struts主要使用两个类来处理错误ActionError和ActionErrors,后一个是前一个的集合。ActionError继承了org.apache.struts.action.ActionMessage。共有6种构造函数。
在ActionFrom里面返回了ActionErrors后,ActionErrors将在关联的Jsp页面访问到。
1。对于在Action中处理,如下所示:
ActionErrors errors = new ActionErrors();
errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("invalidUser", "Invalid user name and/or password."));
saveErrors(request, errors);

2。Jsp页面中显示错误信息
ActionErrors对象将存储在HttpRequest对象中,从中读取即可。通常利用Struts Taglib来显示这些东西,以后看看怎么实现。示例:(原文代码使用的Struts版本较低,部分方法在新版本的Struts中已经不能使用:比如ActionErrors.GLOBAL_MESSAGE,actionErrors.Empty())至今尚未调试成功,后来改为使用Titles来显示错误,打算这部分以后有空再改改。

<%
  // displays error messages, if any

  ActionErrors actionErrors = (ActionErrors) request.getAttribute(ActionMessage.GLOBAL_MESSAGE);
  if (actionErrors!=null && !actionErrors.isEmpty()) {
    out.println(actionErrors.size() + " error(s) found.<br>");

    Iterator errors = actionErrors.get();
    while (errors.hasNext()) {
      ActionError actionError = (ActionError) errors.next();
      String errorMessage = (String) (actionError.getValues())[0];
      out.println("  - " + errorMessage + "<br>");
    }
    out.println("<hr>");
  }
%>

==========================
=                 以上6篇为一个完整的系列                  =
==========================
第七篇:[中文]使用Struts提供的HTML标签库系列
1.用标签库提高开发速度 http://www.fawcette.com/China/Articles.aspx?ID=253&OON=Old
介绍了3个最简单的html中的标签,例如:
<html:html locale="true">
<html:base/>
<html:img page="/logo.gif" height="50" 
width="200" alt="Company Logo"/>

2.学习Struts提供的和Form相关的标签  http://www.fawcette.com/China/Articles.aspx?ID=255&OON=Old
介绍了与form中各个元素一一对应的几个标签
3. 使用Struts提供的HTML标签库 http://www.fawcette.com/China/Articles.aspx?ID=256&OON=Old
一个示例,但struts版本问题,在struts1。2上运行要改动struts-config.xml,导入资源文件方式有问题,参照struts-blank改应该没问题了
PS:如果出现了javax.servlet.servletexception: cannot find actionmappings or actionformbeans collection错误可以参照这个第一条解决
http://blog.csdn.net/maxway/archive/2005/02/03/278596.aspx
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值