struts1 工作原理
2024-09-18 06:41:37
struts1的原理和工作流程
struts1的工作原理或者说工作流程:
1.在web应用程序启动就会加载ActionServlet,ActionServlet从配置文件struts-config.xml中读取配置信息,并把它们存放到各种配置对象中。当ActionServlet接受到一个客户端请求时,将执行如下流程:
(1).检索和用户匹配的ActionMapping实例,如果不存在,就返回请求路径无效的错误信息
(2).如果ActionForm实例不存在,就创建一个ActionForm的对象,把客户提交的表单数据封装到ActionForm对象中。
(3).根据配置信息决定是否要进行表单验证,如果需要,就调用ActionForm的validate()方法
(4).如果validate()方法放回null,或者并不包含ActionMessage的ActionError对象,就表示验证成功
(5).ActionServlet根据ActionMapping所包含的映射信息决定将请求转发给那个action,如果相应的action实例不存在,就先创建这个action对象,然后再调用这个action的excute()方法
(6).action的execute()方法返回一个ActionForword对象,ActionServlet会把客户请求转发给ActionForword对象所指向的JSP组件
(7).ActionForword对象指向JSP组件生成动态网页返回给客户
最新文章
- jQuery与Zepto的异同
- WebService - 怎样提高WebService性能 大数据量网络传输处理
- FreeSWITCH的传真发送
- 二模 (8) day1
- *EditPlus注册码在线生成
- 【暑假】[深入动态规划]UVa 1380 A Scheduling Problem
- BZOJ1653: [Usaco2006 Feb]Backward Digit Sums
- jQuery模拟瀑布流布局
- css3_note
- Cocos2d-x 3.0 创建一个场景,并设置现场的时候,项目开始执行上主动
- Flume-ng源码解析之Source组件
- 获取3个月前的时间(获取某一天的时间 NSDate)
- Python-String字符串的相关方法
- 【Uva 11280 飞到弗雷德里顿】
- 成环的概率dp(初级) zoj 3329
- Django部署以及整合celery
- 使用promisify解决fs的回调地狱问题
- latex与word之间的各种转化方法
- MySQL的order by时区分大小写
- 【Unity Shader】(七) ------ 复杂的光照(下)