1、struts2处理web应用请求过程mvc实现
?
????????????????
?
?
2、HTTP请求 提交 Struts2StrutsPrepareAndExecuteFilter 核心控制器 ------ 请求分发给不同Action
?
3、让请求能够访问Action? ----- Action书写方式 三种
第一种 Action可以是 POJO? ((PlainOldJavaObjects)简单的Java对象) ----???? 不需要继承任何父类,实现任何接口
??? *struts2框架 读取struts.xml 获得 完整Action类名
??? *obj = Class.forName("完整类名").newInstance();
??? * Method m =Class.forName("完整类名").getMethod("execute");? m.invoke(obj); 通过反射 执行 execute方法
?
第二种 编写Action 实现Action接口
??? Action接口中,定义默认五种逻辑视图名称
class="java" name="code"> publicstatic final String SUCCESS = "success"; // 数据处理成功 (成功页面) publicstatic final String NONE = "none"; // 页面不跳转 return null; 效果一样 publicstatic final String ERROR = "error"; // 数据处理发送错误 (错误页面) publicstatic final String INPUT = "input"; // 用户输入数据有误,通常用于表单数据校验 (输入页面) publicstatic final String LOGIN = "login"; // 主要权限认证 (登陆页面)?
?
?
*五种逻辑视图,解决Action处理数据后,跳转页面 ????????
?
?????????? 第三种 编写Action?继承ActionSupport? (推荐)
?? 在Action中使用 表单校验、错误信息设置、读取国际化信息 三个功能
?
4、开发细节-三个一致