`
snowyvalley
  • 浏览: 147931 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

<Struts in Action>阅读心得

    博客分类:
  • Java
阅读更多

经过长达一个半月的时间,终于把一本长达600多页的英文《Struts in Action》给啃完了,这可是我第一次通读英文书籍,以前总是有始无终,很少有耐心去看满目的英文。看英文资料的感觉还是很好的,有一种贴近作者,与名师触膝聆听的感觉,不像读译文,嚼着别人吃剩下的一点营养,碰到水平不高的译文,可能被误入歧途,就像读武功秘笈而走火入魔。


我给像我这样渴望读英文原作的同路人的建议是:

1 不用害怕读不懂,硬着头皮读下去,第一遍没看懂,你可以隔段时间再把它翻出来再读,你就会感觉阻力会小了很多。

2 技术资料的单词是经常重复的,重复的重要性是你会加深记忆,等通读完一本书后,你会不知不觉中记住了这些单词。

3 遇到不认识的单词不要马上查词典,只要不影响整句话的理解,你可以推测它的含义,遇到单词就去查词典会打断你的思路的连贯性。

4 自己遇到的单词要记录到本子上,我是把pdf格式的电子书打印出来的,看电脑屏幕眼睛的感觉不舒服,而且总是急于滑动鼠标的滚轮,而失去阅读的耐心,还是读纸上的东西感觉舒服些吧,可能是受传统教育的影响,好像E书不是书一样,我把查过的单词就直接记在书上了。

还是言规正传,回到《Struts in Action》这本书上来吧,《Struts in Aciton》是由manning Publication co.(www.manning.com)出版的,书的作者Ted Husteel,Cedric Dumoulin,David Wiwerfeldt等均是Struts开发组的成员。

Struts in Action》全书由四部分构成:

第一部分 Struts 开篇

浏览Struts技术,建立一个简单的Struts应用程序,配置Struts组件。

第二部分 提升你的框架

介绍ActionFormActionForwardsActionMappingsAction,及ActionServlet

第三部分 构建你的页面

介绍显示动态内容,用Tiles开发应用程序,验证用户的输入,本地化,Struts使用数据服务。

第四部分 Struts实例

通过建立一个Artimus(新闻发布Web应用程序)将Struts组件组合在一起,并介绍如何使用Velocity取代Jsp技术

Struts in Action》全书共分17章,每一章的开头都有一个富于哲理,寓意深刻的格言,比如:If the only tool you have is a hammer,you tend to see every problem as nail(如果你仅有的工具是一把锤子,你就会把每个问题都看成是钉子).这足见著书者用心之良苦。

各章节的内容简介

第一章:介绍

主要内容:介绍应用程序框架,理解Http,CGI,Servlet/Jsp,SunModel 2设计模式,以及建立一个简单的

应用程序。SunModel 2 技术是Servlet处理数据的存取,控制导航,jsp处理表示层,Struts就是基于此技术的,

本章还详细讲述了如何建立一个简单的Struts应用程序,通过这个程序,你会对Struts有一个很具体的认识

包括安装JDK,安装Tomcat,建立ActionFormAction,配置Strutsconfig.xml,建立显示页面,如何运行程序等。

第二章 探索struts技术

主要内容:介绍应用程序框架,MVC,理解Struts是怎样工作的,使用Struts控制流及探索Struts的优缺点。

第三章 建立一个简单的登陆应用程序

登陆应用程序概述:第一次运行是一个欢迎页面,点击登陆链接,要求输入用户名,密码,对用户的输入进行验证,如出现错误,返回提示信息。登陆成功后,是欢迎特定用户的页面,并提供注销的链接。文中有详细的代码及实现过程并且包括Struts环境的搭建,安装Ant,编辑器(jEdit),设置build.xmlweb.xmlStruts-config.xml以及资源文件。这一章确实是入门的经典,可以说得上是手把手得教你了。

第四章 配置struts组件

这一章讲述了运用三个XML文件(web.xml,struts-config.xml,build.xml)和一个属性文件配置(application.propertiesstruts程序。

还介绍了Tiles框架的配置,struts验证组件的配置,通过这些灵活的配置文件,可以看出调整配置struts甚至不用更改java代码,和表示层页面代码.

第五章 Coping with ActionForms(不知该怎么译了)

主要内容:理解ActionForm的生命周期,ActionForm的作用,讨论ActionForm的设计上的特性,使用ActionForm的最好实践,组装ActionForm,介绍 BaseFormActionForm是数据的收集者,缓存数据,完成简单的校验(数据的表面可靠性),可以进行数据类型的转换

第六章 充当布线者的ActionForwards

主要内容是:ActionForward的最佳实践,使用运行时参数,动态的Forward。全局ActionForward和局部ActionForward:全局ActionForward是对应用程序中的任何Action都有效,局部ActionForward是在ActionMapping中定义的,仅对ActionMapping中的Action对象有效。findForward方法先找到局部ActionForward,找不到时再找全局ActionForward

第七章 ActionMappings设计

主要内容:理解ActionMappings,定义ActionMappings的属性,使用局部的和全局的ActionForwards,ActionMapping通常是通过Struts的配置文件建立起来的。

第八章 Action对象工作

主要内容:介绍

ForwardAction,IncludeAction,DispatchAction,LookupDispatchAction,SwitchAction,BaseAction等的作用和用法。

第九章 扩展ActionServlet

主要内容:理解ActionServlet在应用程序中的角色,使用ActionServlet扩展组件。

第十章 显示动态内容

主要内容:理解为什么要使用Jsp标签,安装扩展标签库,使用StrutsJsp标签。

第十一章 Tiles开发应用程序

主要内容:利用动态包含文件设计应用程序,组合StrutsTiles框架,理解tile的定义,属性,将应用程序迁移到Tiles

第十二章 验证用户的输入

主要内容:理解数据验证的重要,配置使用公共的Validator,使用多页面和本地化的验证,写自己的Validator

第十三章 本地化内容

主要内容:理解本地化的重要性,使用Struts的国际化特性,本地化你的Struts应用程序

第十四章 Struts中使用数据服务

主要内容:理解应用程序为什么和怎样使用数据库和其他的数据服务,定义应用程序的商业层,商业层的连接数据访问组件

第十五章 Artimus(一个新闻发布系统的Web应用程序)

主要内容:介绍应用程序Artimus,在同一应用程序中使用TilesValidatorScafforld包。

第十六章 Artimus迁移到Struts1.1

主要内容:更新Struts1.0的应用程序,使用动态ActionForms,实现基于Action的安全,配置Struts1.1下的TilesValidator

第十七章 Velocity代替Jsps

主要内容:介绍Velocity模板,在Web应用程序中使用VelocityStruts应用程序中使用Velocity,从JspVelocity的转换。

附录A:设计模式概述

附录BStruts-config API

附录C:标签库快速参照

总结:

       的确是出自Struts开发人员之手的一本好书,书中涉及很多技术细节和大量精致的代码,即让你知道为什么,又教你怎样做,而且还传授你一些技巧,教你怎样做得更好!

分享到:
评论

相关推荐

    Struts 1.XX <html:file>的使用

    &lt;/action&gt; &lt;/action-mappings&gt; ``` 在对应的Action类(如UploadAction)中,你可以处理文件上传的逻辑,包括验证、保存文件等操作。例如: ```java public ActionForward execute(ActionMapping mapping, ...

    struts框架搭建

    &lt;action name="HelloWorld" class="chapter1.action.Chapter1Action" method="execute"&gt; &lt;result name="success"&gt;/WEB-INF/JspPage/chapter1/HelloWorld.jsp&lt;/result&gt; &lt;/action&gt; &lt;/package&gt; &lt;/struts&gt; ``` - ...

    struts标签(如<html:form>)

    关于STRUTS标签的一些详细说明。 如:&lt;html:form&gt;的说明。

    Struts框架基础包

    例如,`&lt;s:form&gt;`、`&lt;s:textfield&gt;`等标签用于构建表单,`&lt;s:actionexecute&gt;`用于调用Action。 4. **国际化与本地化支持**:`struts-i18n-x.x.x.jar`包含国际化和本地化资源,使得应用能够根据用户的语言和地区提供...

    Struts2 JSP中将list,set ,Map传递到Action然后<s:iterator>遍历(三十五)

    本文将深入探讨如何在JSP中将`List`, `Set`, `Map`等集合类型的数据传递到Action,然后再通过`&lt;s:iterator&gt;`标签进行遍历显示。这种方式对于数据的展示和交互具有重要的实践意义。 首先,我们需要了解Struts2的工作...

    使用Struts的Action来对数据库进行增、删、改、查四项操作(源码)

    使用Struts的Action来对数据库进行增、删、改、查四项操作&lt;br/&gt;&lt;br/&gt;1、数据库MySQL,创建数据库 Pagination&lt;br/&gt; MySQL.sql用来创建表结构&lt;br/&gt;&lt;br/&gt;连接方式有两种,一种直接JDBC,一种通过连接池,代码中有说明...

    Struts标签集合简介

    `&lt;s:token&gt;` 用于防止重复提交,`&lt;s:tree&gt;` 创建树形结构,`&lt;s:treenode&gt;` 定义树节点,`&lt;s:updownselect&gt;` 创建可上下选择的多选框,`&lt;s:url&gt;` 生成URL,通常与Action关联。 以上就是Struts标签的基本介绍,它们极...

    struts2架构的必备包

    &lt;groupId&gt;org.apache.struts&lt;/groupId&gt; &lt;artifactId&gt;struts2-core&lt;/artifactId&gt; &lt;version&gt;2.5.33&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;org.apache.struts&lt;/groupId&gt; &lt;artifactId&gt;struts2-...

    struts2的入门开发

    &lt;struts-config&gt; &lt;data-sources/&gt; − &lt;form-beans&gt; &lt;form-bean name="loginForm" type="test.form.LoginForm"/&gt; &lt;/form-beans&gt; &lt;global-exceptions/&gt; &lt;global-forwards/&gt; − &lt;action-mappings&gt; − &lt;action attribute...

    struts1 demo

    &lt;struts-config&gt; &lt;form-beans&gt; &lt;form-bean name="LoginForm" type="com.yza.struts.form.LoginForm"&gt;&lt;/form-bean&gt; &lt;/form-beans&gt; &lt;global-exceptions /&gt; &lt;global-forwards /&gt; &lt;action-mappings&gt; &lt;action ...

    Struts2标签列表及说明

    * &lt;s:actionerror&gt;:如果 action 的 errors 有值那么显示出来 * &lt;s:actionmessage&gt;:如果 action 的 message 有值那么显示出来 * &lt;s:append&gt;:添加一个值到 list,类似于 list.add(); * &lt;s:autocompleter&gt;:自动完成...

    搭建struts1.x环境例子源码

    &lt;filter-class&gt;org.apache.struts.action.ActionServlet&lt;/filter-class&gt; &lt;init-param&gt; &lt;param-name&gt;config&lt;/param-name&gt; &lt;param-value&gt;/WEB-INF/struts-config.xml&lt;/param-value&gt; &lt;/init-param&gt; &lt;init-param&gt; ...

    struts-2.3.4.1所需的jar文件

    &lt;filter-name&gt;struts2&lt;/filter-name&gt; &lt;filter-class&gt; org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter &lt;/filter-class&gt; &lt;/filter&gt; &lt;filter-mapping&gt; &lt;filter-name&gt;struts2&lt;/filter-...

    struts1[1].2配置详细.doc

    &lt;servlet-name&gt;action&lt;/servlet-name&gt; &lt;servlet-class&gt;org.apache.struts.action.ActionServlet&lt;/servlet-class&gt; &lt;init-param&gt; &lt;param-name&gt;config&lt;/param-name&gt; &lt;param-value&gt;/WEB-INF/struts-config.xml&lt;/...

    Struts配置文件详解.

    它包含8个主要子元素,如`&lt;form-beans&gt;`, `&lt;action-mappings&gt;`, `&lt;controller&gt;`, `&lt;message-resources&gt;`, `&lt;plug-in&gt;`, `&lt;global-forwards&gt;`, `&lt;global-exceptions&gt;`, 和 `&lt;data-sources&gt;`,它们分别用于配置表单...

    struts2标签库

    - **`&lt;s:action&gt;`**:用于执行Action,类似于Struts1中的`&lt;s:send&gt;`标签。但Struts2的`&lt;s:action&gt;`提供了更高级的功能,比如可以通过name属性指定Action的名称,并且可以使用额外的参数来传递数据。 #### 2. `&lt;s:...

    struts2实例 学生信息管理系统

    &lt;result type="redirect"&gt;List.action&lt;/result&gt; &lt;/action&gt; &lt;action name="Remove" class="action.BookAction" method="remove"&gt; &lt;result type="redirect"&gt;List.action&lt;/result&gt; &lt;/action&gt;--&gt; &lt;/package&gt; &lt;/...

    Struts1基本配置

    &lt;servlet-name&gt;action&lt;/servlet-name&gt; &lt;servlet-class&gt;org.apache.struts.action.ActionServlet&lt;/servlet-class&gt; &lt;init-param&gt; &lt;param-name&gt;config&lt;/param-name&gt; &lt;param-value&gt;/WEB-INF/struts-config.xml&lt;/...

    Struts 通俗易懂

    一个struts入门的简单流程图。...next5: struts控制器在HelloForm bean处理结束会根据&lt;action-mappings&gt;的type调用指定的HelloAction类 关联: mapping.findForward()方法调用&lt;action-mappings&gt;的&lt;forward&gt;

Global site tag (gtag.js) - Google Analytics