"struts1.2个人笔记,主要包括Struts1.2的运行流程、配置以及struts-config.xml文件详解"
Struts1.2是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,它专注于表示层的处理,帮助开发者构建可维护性和可扩展性强的Web应用。在这个个人笔记中,我们将深入理解Struts1.2的工作原理、配置过程及其核心配置文件struts-config.xml。
1. Struts1.2运行流程
当用户发起HTTP请求时,Struts框架开始工作。首先,Struts会解析`struts-config.xml`中的`ActionMapping`,找到与请求路径相匹配的配置。接着,它会查找对应的`Action`类,并实例化一个`ActionForm`对象,该对象用于收集用户输入的数据。在实例化`ActionForm`时,会调用`reset()`方法初始化字段,并依据配置决定是否执行`validate()`方法来验证数据有效性。若验证通过,`Action`类的`execute()`方法会被调用,执行业务逻辑。最后,`execute()`方法返回一个`ActionForward`对象,指示请求应转发到哪个页面。
2. Struts1.2配置
配置Struts1.2主要包括以下几个步骤:
- 将Struts库的JAR文件复制到`WEB-INF/lib`目录下。
- 在`web.xml`中配置`ActionServlet`,它是Struts框架的核心控制器,负责拦截请求并分发到相应的Action。
- 创建`struts-config.xml`配置文件,定义Action、ActionForm、ActionMapping等元素,描述应用的组件和行为。
- 设计JSP页面,如登录示例中的`login.jsp`(用户界面)、`login_success.jsp`(成功登录后跳转的页面)和`login_error.jsp`(登录失败提示页面)。
- 编写对应的ActionForm类,如`LoginActionForm.java`,封装用户输入的数据并实现验证。
- 编写Action类,如`LoginAction.java`,实现业务逻辑。
3. `struts-config.xml`详解
`struts-config.xml`是Struts的核心配置文件,包含以下关键元素:
- `<controller>`:定义Struts控制器的全局配置,如请求处理器、异常处理等。
- `<global-exceptions>`:配置全局异常处理,指定如何处理未在Action中捕获的异常。
- `<global-forwards>`:定义全局转发,这些转发可以被任何Action使用。
- `<actions>`:配置Action元素,每个Action元素对应一个Action类和ActionForm,定义其映射路径、Form类和业务处理方法。
- `<form-beans>`:定义ActionForm对象,包括它们的类型和作用域。
- `<action-mappings>`:定义Action的映射,包括Action的路径、名称、Form Bean和转发目标。
- `<message-resources>`:配置消息资源,用于国际化和本地化。
- `<plug-in>`:插件配置,可以扩展Struts功能。
通过理解和熟练运用这些配置,开发者可以灵活地搭建和调整Struts1.2应用,以满足各种Web开发需求。在实际开发中,还需要关注其他方面,如错误处理、数据校验、国际化支持等,以打造健壮的Web应用程序。