Struts_Gossip学习笔记

为了不侵犯别人的版权,因此我就不提供下载的文件了,大家可以直接去对方网站下载,这本书写得不错,值得推荐。大家可以自己去网上找找看。
http://www.caterpillar.onlyfun.net/Gossip/index.html

1. Struts核心
1.1. 什么是Struts?
1.2. Struts基本运作流程
Controller: org.apache.struts.action.ActionServlet/ javax.servlet.http.HttpServlet
 理想收客户不会直接请求资源或相关JSP页面,所有的客户请求都必须传送到控制器,由控制器决定转发给哪个对象处理、哪个页面回应。
View: 静态网页、JSP网页、Struts自定义标签。
1.5. ActionMapping: struts-config.xml的<action-mappings>标签用来描述一组ActionMapping对象。客户请求至ActionServlet时,ActionSerlvet查看相应的ActionMapping,ActionMapping回复应该使用哪个Action对象,ActionServlet再将控制转移至Action对象。
1.6. Action: 调用execute()。通常工作包括:验证使用者进程状态;进一步验证表单对象的信息;更新应用程序中对象的状态;处理客户端的请求;返回ActionForward给ActionServlet。
1.7. ActionForm: 是表单的对象化,就是一个JavaBean。表单项目的对应;数据缓存;数据验证;属性转换;程序安全控制。
1.8. ActionError或ActionMessage: 表单的validate()。表示验证不通过的数据,会在JSP页面中进行表示。
1.9. DynaActionForm: 避免为每个表单写代码,在XML中定义,由系统自动生成。但是会造成struts-config.xml过长,系统性能下降。
1.10. Map-backed ActionForm: 由程序代码生成的表单内容。(这个没搞懂用途)
1.11. 协同开发:可以拆分struts-config.xml文件为多个,从而协同开发时不会冲突。
1.12. 异常处理:使用Struts默认的异常处理;使用自定义全局异常处理;为每个Action提供用户自定义异常处理。
1.13. 从ActionServlet到RequestProcessor:可以跟踪或者自定义Controller。
1.14. ForwardAction、IncludeAction、SwitchAction:(这个没搞懂用途)
1.15. 使用DispatchAction类:可以为Action进行函数级别的定义,减少了Action的数量。
1.16. 使用LookupAction类:与DispatchAction一样可以用参数定义Action进行函数级别的定义,还增加了通过value查询对应的函数。(y这个地方还需要再详细描述)
1.17. PlugIn接口:用来扩展ActionServlet功能,使初始化函数不用在代码中固定,只需要在struts-config.xml中定义就可以,Tiles与Validator就是这样扩充的。

2. Struts Tag
2.1 Struts Html Tag快速参考:<html:html/>, <html:base/>, <html:link/>, <html:img/>, <html:errors/>, <html:messages/>, <html:button/>, <html:form/>, <html:submit/>, <html:reset/>, <html:cancel/>, <html:text/>, <html:password/>, <html:hidden/>, <html:textarea/>, <html:radio/>, <html:checkbox/>, <html:multibox/>, <html:select/>, <html:option/>, <html:image/>
2.2. Strtus Bean Tag快速参考:<bean:cookie/>、<bean:header/>、<bean:parameter/>, <bean:page/>, <bean:define/>, <bean:include/>, <bean:message/> <bean:resource/>, <bean:write/>, <bean:struts/>
2.3. Struts Logic Tag快速参考: <logic:equal/>、<logic:notEqual/> <logic:greatEqual/>、<logic:greatThan/> <logic:lessEqual/>、<logic:lessThan/> <logic:match/>、<logic:notMatch/> <logic:present/>、<logic:notPresent/>

3. Validator整合
3.1. Validator简介:减少validator()函数的撰写,以及代码绑定。
需要commons-validator.jar和jakarta-oro.jar两个类库。
以plug-in的方式扩展Struts功能,因此必须在struts-config.xml中定义。
3.2. 客户端验证
3.3. 服务器验证
3.4. 配置文件管理
3.5. 内建验证器
3.6. 自定义验证器

4. Tiles整合
4.1. Tiles简介:是Template Engine,可以使网页布局(Layout)标签与内容分离,提供版面控制机制。
需要commons-beanutils.jar、commons-logging.jar、commons-collections.jar、commons-digester.jar、struts.jar四个类库。
以plug-in的方式扩展Struts功能,因此必须在struts-config.xml中定义。
必须在web.xml中定义标签库。

5. 档案上传

学习重点:
struts-config.xml
DTO(Data Transfer Object)
DAO(Data Access Object)

posted @ 2007-06-18 14:52  zYx.Tom  阅读(101)  评论(0编辑  收藏  举报