一:model1和model2的区别
model1:jsp既做控制也做显示
model2:即mvc,jsp、taglib做显示、ActionServlet做控制、其他做model
二:struts的体系结构
struts-config.xml
|
|
request------------------ActionServlet---(ActionMapping)----------- |
Action(调用Model处理ActionForm)
|
response----------------View(jsp,tags)--(ActionForward)---------------
三:核心组件:ActionServlet、ActionMapping、Action、ActionForm、ActionForward
四:struts配置文件:ApplicationResource.properties、struts-config.xml
五:struts标签库:struts-html.tld、struts-bean.tld、struts-logic.tld等
六:struts工作流
ActionServlet接收用户请求、ActionMapping映射配置文件、RequestProcessor代理ActionServlet处理请求、Action响应处理类、ActionForward转发、ActionForm保存用户表单信息、ActionErrors保存错误信息。
七:struts-config.xml配置
<data-sources>
<form-bean>
<global-exception>
<global-forward>
<action-mapping>
<controller>
<message-resources>
<plug-in>
八:表单
ActionForm、DynaActionForm、DynaValidatorForm、
九:Action处理器
继承Action
继承ForwardAction
继承IncludeAction
继承DispatchAction
继承LookupDispatchAction
继承SwitchAction
十:标签库
StrutsHTML
作为生成html表单和显示错误信息和正常信息
<html:errors>显示错误信息
<html:messages>显示正常信息
StrutsBean访问Http请求和jsp隐式对象
注意:<bean:message>国际化信息
<bean:include>
<bean:write name="xxx" property="id">
Struts Logic
<logic:equal>
<logic:notEqual>
<logic:greaterEqual>
<logic:greaterThan>
<logic:lessEqual>
<logic:lessThan>
<logic:match>
<logic:notMatch>
<logic:Empty>
<logic:notEmpty>
<logic:persent>
<logic:notPresent>
<logic:messagesPresent>
<logic:messagesNotPresent>
<logic:iterator>
<logic:forward>
<logic:redirect>
十一:国际化
十二:struts数据校验
启动Validator插件
配置validator-rules.xml
创建校验ActionForm
配置validator.xml
配置ApplicationResource.properties
启用客户端
基于Form-bean验证
1.ActionForm继承ValidatorForm
2.DynaValidatorForm
基于路径验证
3.ActionForm继承ValidatorActionForm
4.DynaValidatorActionForm