0.定义
Struts is open source software that helps developers build web applications
quickly and easily. Struts relies on standard technologies—such as JavaBeans, Java
servlets, and JavaServer Pages (JSP)—that most developers already know how to
use. By taking a standards-based, “fill-in-the-blanks” approach to software development,
Struts can alleviate much of the time-consuming grunt work that comes
with every new project.
Struts是一个能够帮助开发者快速而简单的开发web应用的开源软件.Struts依赖像JavaBeans,servlet,
和jsp等这些已被大部分开发者熟知的标准技术.在基于标准方面,Struts接近“fill-in-the-blanks”
软件开发标准,而且在每个新工程中更能减轻花费大量时间烦躁工作痛苦.
1.simpleExample 提供最简单的sample
struts-config.xml //配置strutsAction 和strutsBeanForm(Bean)
sampleAction.java //流转action
sampleBeanForm.java //java Bean
sampleSuccess.jsp //成功页面
sampleFailure.jsp //fail页面
sampleInput.jsp //激发action.do
2.特性
HTTP-centric:
Struts is designed around the standard HTTP request-response
model, familiar to many web developers.
Standard logging:
Struts can use the container’s default logging system and does not
require another package to be configured or understood.
Optional debug logging:
Struts optionally logs a number of status messages during processing
that can be helpful in debugging.
Model neutral:
Struts is not predisposed to any particular persistence layer.
Collects implementation detail in a centralized configuration:
The Struts configuration encapsulates the implementation detail for
an application, or application module [Struts 1.1], so it can be
reviewed and managed as a whole.
Permits a different message resources file for each locale:
Different translators can work on their own copy of the message
resource file. Adding support for a new locale is simply a matter of
adding another message resource file.
Lightweight:
Struts has relatively few core classes for developers to learn.
Open source:
Full source code is provided under the liberal Apache Software
License, leaving all your options open.
Strong developer community:
There is a strong development community behind Struts. The mailing
is very active. Many developer extensions are available.
Strong vendor community:
Struts is incorporated by several other products, including Jcorporate’s
Expresso and IBM’s WebSphere. Struts-specific tools are also
available from several vendors.
Strong product support:
Struts has its own professionally managed JGuru forum. The Struts
mailing list is available through at least two other support portals.
Struts has been covered in dozens of articles and several books, and
has been addressed at professional seminars by several organizations.
Strong development team:
Over 30 developers contributed to Struts 1.1. The Struts team is currently
composed of nine active Committers, who share full responsibility
for the source code.
Stable releases:
The Struts formal releases follow a long testing period with no set
deadline, so teams can be assured of a high-quality product.
i18n support:
Support for localization is built into Struts from the ground up.
High compliance/mainstream mindset:
Struts is dedicated to providing a product that is 100 percent compliant
with public standards and that is in line with the development
mainstream.
Full-service tag extensions:
Struts includes a set of general-purpose tag extensions in addition to
those that use framework-specific resources. Together, they can meet
all of your JSP needs, without you having to resort to scriptlets.
Well-documented source code:
The Struts JavaDocs are so detailed that you rarely, if ever, need to
refer to the source. This is in addition to a high-level user guide to
introduce developers to the framework.
Strongly founded in design patterns:
The Struts framework implements several classic patterns in its architecture
that are familiar to most developers.
Extensible:
All default settings can be configured. The core Struts classes may be
overridden and subclasses loaded in their place. The developer can
customize key classes such as ActionForm and Action.
以HTTP为中心 -Struts是围绕被大部分Web开发人员熟知HTTP请求/相应模型而设计的;
标准的日志 -Struts能使用默认的日志系统不需要其他包去配置和解释;
可选的DEBUG日志 -Struts可以记录大量的进程中消息状态,这对DEBUG十分有帮助;
中立性的模型 -Struts不倾向任何特殊的持久化层;
集中配置 -Struts配置记录一个应用或是一个应用模块详细信息,所以它可以作为一个整体被预览和管理;
信息配置文件locale -Struts给不同的翻译器提供信息资源文件副本.
轻量级 -Struts有极少核心类让开发人员去掌握.
开源 -Struts是在Apache自由软件基金License下完全开源的
强大的开发交流
强大的商业交流
强大产品支持
强大的开发小组
可伸缩版本
i18n支持
服从主流思想
全服务TAG扩展 -Struts除了使用制定框架资源,还包括一系列常用TAG扩展.
很好文档源文件代码 -Struts的JAVADOCS为了高级用户指导开发框架.
强大模式设计基础 -Struts在它的体系中实现了几个经典模式并为大部分开发者熟悉.
可扩展性 -所有默认设置都能被配置.这个核心Struts类可以overridden和子类在各自位置装载,开发人员可以定制像ActionForm,Action关键类
附加-弱点
No event model: Struts的事件是严格遵守请求/相应HTTP,这样限制了开发人员使用其他事件
Debugging: Struts没有提供自动debug事件.
No default data model or concrete recommendations:
Single ActionServlet:
Requires understanding of Struts components:
Vendor does not offer priority support:
Mailing list is a embarrassmentof riches:
Formal releases are not rapid:
i18n limitations: 尽管Struts信息资源在国际化标签和错误信息方面国际化做的很好,但没有大块信息国际化
JSP mindset: 当使用它的MVC体系使得的它资源在任何现有系统中可用.对JSP长期存在隐患
JSP exception localization: 需要系统级消息不是国际化的.仍然是英语
Tag properties are verbose: Struts扩展必须提供几个参数对程序开来显的笨拙.
The perform and execute signatures: perform方法是系统的瓶颈,但Struts1.1提供了execute方法来解决这个问题
Fuzzy nomenclature:使人迷惑术语
3.关键字/关键用语
4.技术
5.原理
6.同类对比
7.深入研究
8.Referrence
<Struct in Action>
JSF
0.定义
JavaServer Faces technology is a server-side user interface component framework for
Java technology-based web applications. It includes
A set of APIs for: representing UI components and managing their state,
handling events and input validation, defining page navigation, and supporting
internationalization and accessibility.
A JavaServer Pages (JSP) custom tag library for expressing a JavaServer Faces interface
within a JSP page.
JSF技术是一个面向基于java Web应用的server面UI组件框架.它包括一系列表现UI组件和管理它们的状态
处理事件和有效的输入,定义页面导航,支持国际化和易用化.为了表达一个JSF接口,一个JSP仅在一个页面定制标签库.
1.simpleExample 提供最简单的sample(独立的,不与其他框架联系)
2.特性
There are many features available in JavaServer Faces Technology. Some of the main feature highlights include:
Managed Bean Facility
Validation Facility
Rich and Extensible Component Library
Pluggable render kits
Navigation in Response to Specific User Events
Preserving Application State Across Requests
Conversion Model
在JSF技术中有很多可利用的特性,以下为主要特性:
管理Bean工具
校验工具
充足而可扩展性组件库
可插入式的渲染组件
响应指定用户事件的导航
保存应用状态交叉请求
转化模型
3.关键字/关键用语
4.技术
5.原理
6.同类对比
7.深入研究
8.Referrence
<JavaServer Faces in Action>