Struts1工作流程
2012-08-29 13:09
260 查看
一年前开始接触struts,从最初的不知所云,到如今还能用它简单的写一些小小的项目,其间经历过很多的波折,毕竟自己不是一个很聪明的程序员。
今天重新拾起这个知识点,突然发现,很多东西如果不经常看真的会遗忘,于是打算把它记在这里。
Struts1的工作流程如下:
1、当web应用启动时开始加载初始化struts的总控制器ActionServlet,ActionServlet从struts-config.xml文件中读取配置信息,把他们保存在各种配置对象中,例如:Action的映射信息存放在ActionMapping对象中;
2、当用户以HTTP方式发送请求到服务器端时,ActionServlet接受请求;
3、ActionServlet接受请求后查找struts-config.xml文件来确定服务器端是否有用户请求的操作,如果没有,则返回一个用户请求无效的错误信息;
4、当ActionServlet找到用户请求的Action后,首先将用户提交的表单信息打包成一个ActionForm对象;
5、ActionServlet根据struts-config.xml中的配置信息决定是否要需要对表单信息进行验证,如果需要验证则执行ActionForm对象中的validate()方法,如果validate方法返回null或一个不包含ActionMessage的ActionErrors对象, 就表示表单验证成功,继续下一步,如果验证失败则返回;
6、系统生成一个用户请求的Action的实例对象,将ActionForm里的参数传递给它,并且运行它的execute()方法;
7、execute()方法执行结束后会生成一个ActionForward对象,并将它返回给Actions,ActionServlet再根据配置信息将用户请求的结果转发给ActionForward所指向的JSP组件;
8、JSP组件生成动态的网页返回给客户。
一个简单的Struts1工作流程就是这样的,如果要学习Struts1,这个流程一定要熟悉,并且对每一步的实现方式都清楚。
今天重新拾起这个知识点,突然发现,很多东西如果不经常看真的会遗忘,于是打算把它记在这里。
Struts1的工作流程如下:
1、当web应用启动时开始加载初始化struts的总控制器ActionServlet,ActionServlet从struts-config.xml文件中读取配置信息,把他们保存在各种配置对象中,例如:Action的映射信息存放在ActionMapping对象中;
2、当用户以HTTP方式发送请求到服务器端时,ActionServlet接受请求;
3、ActionServlet接受请求后查找struts-config.xml文件来确定服务器端是否有用户请求的操作,如果没有,则返回一个用户请求无效的错误信息;
4、当ActionServlet找到用户请求的Action后,首先将用户提交的表单信息打包成一个ActionForm对象;
5、ActionServlet根据struts-config.xml中的配置信息决定是否要需要对表单信息进行验证,如果需要验证则执行ActionForm对象中的validate()方法,如果validate方法返回null或一个不包含ActionMessage的ActionErrors对象, 就表示表单验证成功,继续下一步,如果验证失败则返回;
6、系统生成一个用户请求的Action的实例对象,将ActionForm里的参数传递给它,并且运行它的execute()方法;
7、execute()方法执行结束后会生成一个ActionForward对象,并将它返回给Actions,ActionServlet再根据配置信息将用户请求的结果转发给ActionForward所指向的JSP组件;
8、JSP组件生成动态的网页返回给客户。
一个简单的Struts1工作流程就是这样的,如果要学习Struts1,这个流程一定要熟悉,并且对每一步的实现方式都清楚。
相关文章推荐
- Struts1工作流程
- Struts1和Struts2的特点、工作流程及差异性
- Struts1的工作流程
- struts1的工作流程
- Struts1和struts2的工作流程
- struts1工作流程
- struts1的基本配置和工作流程
- struts1的工作流程
- struts1工作流程
- Struts1的工作处理流程
- GIT和VPS联合工作流程
- Storm工作流程 vs. Spark Stream
- 遵循ITIL流程框架,运维工作进入规范化新纪元――黑龙江远大购物中心
- OpenStack 网络总结之:理解GRE隧道的工作流程
- ios NSURLSession使用说明及后台工作流程分析
- 开源社区提交patch的工作流程分析
- 深度学习中BP(Backpropagation)算法的工作流程
- Nutch Crawler工作流程及文件格式详细分析
- struts2的工作流程
- servlet工作流程