? Action的作用
– 处理具体业务逻辑的小控制器
? Action 的配置和使用
– Action 的定义
– Action 的声明
– Action 的调用

? 使用Struts的流程
– 图示
– 定义Action
– 定义Formbean
– 配置Action、formbean
– 配置映射结果
– 定义JSP页面
– 调用

? 映射结果
– ActionForward
– 配置映射
– Global forward
---------------------------START-----------------------------------
? Action 的作用
–和Servlet来比较使用
–处理用户请求

? 处理具体业务逻辑的小控制器
–调用后台逻辑
? 业务逻辑
? 数据逻辑
–页面跳转
? 返回ActionForward
–被配置struts-config.xml文件中
? Action 的配置和使用
–Action 的定义

? 定义一个类继承Action
? 覆盖Action的execute方法
– 例如: 
public class LoginAction extends Action {    
public ActionForward execute(ActionMapping mapping, ActionForm form,    
HttpServletRequest request, HttpServletResponse    
response) throws Exception {    
}

–Action 的声明
? 配置在struts-config.xml配置文件中,例如: 
"/login"    
type= "com.redking.action.LoginAction"    
>    

–Action 的调用
? 表单调用
? URL调用
? 超链接调用
? JavaScript调用
LoginAction.java
开源框架Struts:Action滴那些事儿_第1张图片
struts-config.xml
开源框架Struts:Action滴那些事儿_第2张图片
web.xml
开源框架Struts:Action滴那些事儿_第3张图片

? URL调用
开源框架Struts:Action滴那些事儿_第4张图片
开源框架Struts:Action滴那些事儿_第5张图片
? 超链接调用
index.jsp
开源框架Struts:Action滴那些事儿_第6张图片
开源框架Struts:Action滴那些事儿_第7张图片
开源框架Struts:Action滴那些事儿_第8张图片
开源框架Struts:Action滴那些事儿_第9张图片
? 表单调用
login.jsp
开源框架Struts:Action滴那些事儿_第10张图片
开源框架Struts:Action滴那些事儿_第11张图片
  开源框架Struts:Action滴那些事儿_第12张图片
开源框架Struts:Action滴那些事儿_第13张图片
? JavaScript调用
login.jsp
开源框架Struts:Action滴那些事儿_第14张图片
LoginAction.java
开源框架Struts:Action滴那些事儿_第15张图片
开源框架Struts:Action滴那些事儿_第16张图片
开源框架Struts:Action滴那些事儿_第17张图片
开源框架Struts:Action滴那些事儿_第18张图片
? 使用Struts的流程
– 图示
开源框架Struts:Action滴那些事儿_第19张图片
– 定义Action
? 同上
– 定义Formbean
?略
– 配置Action、formbean
? Actoin
– 同上
? formBean
–略
– 配置映射结果 
"welcome" path= "/pages/Welcome.jsp">    
"failure" path= "/pages/Failure.jsp">

– 定义JSP页面 
"f1" id= "f1" action= "<%=path %>/login.amaker" method= "post">    

– 调用
action= "<%=path %>/login.amaker"
? 映射结果
–ActionForward
? Action 的execute方法返回ActionForward对象来跳转到其他页面
? 通过ActionMapping的方法来跳转
–findForward(“welcome”);
? 跳转到指定页面
–getInputForward();
? 跳转到输入页面
–配置映射
"welcome" path= "/pages/Welcome.jsp">    
"failure" path= "/pages/Failure.jsp">
–Global forward
    
"index"
path= "/index.jsp"/>    
LoginAction.java
开源框架Struts:Action滴那些事儿_第20张图片
struts-config.xml
开源框架Struts:Action滴那些事儿_第21张图片
successfull.jsp
开源框架Struts:Action滴那些事儿_第22张图片
failure.jsp
开源框架Struts:Action滴那些事儿_第23张图片
测试:
开源框架Struts:Action滴那些事儿_第24张图片
登录成功
开源框架Struts:Action滴那些事儿_第25张图片
重新测试:
开源框架Struts:Action滴那些事儿_第26张图片
登录失败
开源框架Struts:Action滴那些事儿_第27张图片
重新改进下哈~
LoginAction.java
开源框架Struts:Action滴那些事儿_第28张图片
struts-config.xml
开源框架Struts:Action滴那些事儿_第29张图片
login.jsp
开源框架Struts:Action滴那些事儿_第30张图片
测试:
开源框架Struts:Action滴那些事儿_第31张图片
看下效果:
开源框架Struts:Action滴那些事儿_第32张图片
上面绕了个转跳转到登录页面,我们再改进下
LoginAction.java
开源框架Struts:Action滴那些事儿_第33张图片
struts-config.xml
开源框架Struts:Action滴那些事儿_第34张图片
重新测试下:
开源框架Struts:Action滴那些事儿_第35张图片
效果一样哈~
开源框架Struts:Action滴那些事儿_第36张图片
下面简单看下Global forward的效果
LoginAction.java
开源框架Struts:Action滴那些事儿_第37张图片
struts-config.xml
开源框架Struts:Action滴那些事儿_第38张图片
看下效果:
开源框架Struts:Action滴那些事儿_第39张图片
开源框架Struts:Action滴那些事儿_第40张图片
-------------------------------END---------------------------------