Struts基本流程
1. Web服务器加载Struts容器
1) 加载配置文件web.xml, servlet-config.xml
2) 根据web.xml加载ActionServlet类,根据servlet-config.xml加载Action,ActionMapping,ActionForward,ActionForm
2. 对外发布网站后,由浏览器发送请求到Web服务器
1) ActionServlet根据请求页面创建FormBean对象,若已存在该对象,则调用FormBean中的reset()方法。
2) 调用FormBean中的setXXX()方法设置属性值
3) 判断是否进行验证操作(根据servlet-config.xml)
4) FormBean创建完成
3. Web服务器传递FormBean给对应的Action类
1) Action进行业务逻辑处理。
2) Action返回ActionMapping给ActionServlet进行跳转处理
4. Web服务器将JSP页面返回给浏览器进行响应
Struts其他内容:
1. Struts1 是单例的,因为:只有一个ActionServlet类,每个Action都是单独一个对象,每个FormBean也是单独的一个对象。因此,Struts1不是线程安全的。对比Struts2是多例的且是线程安全的。
2. 配置多个servlet-config.xml有两种方法:在web.xml中进行分模块
Struts的常用功能
1. Struts国际化
2. 验证构架
3. Struts标签:html, logic, bean, nested
4. Struts Tiles(页面布局)
5. Struts可扩展插件