"实现Action控制类-Struts2基础知识"
在Struts2框架中,Action控制类是核心组件之一,它负责处理HTTP请求并提供业务逻辑。`LoginAction.java`示例展示了如何创建一个简单的Action类。这个类包含了两个私有属性`userName`和`password`,分别用于存储用户名和密码,以及它们对应的setter和getter方法。`execute()`方法是Action类的核心,它是Struts2执行流程中调用的方法,返回值决定了视图的跳转方向。在这个例子中,`execute()`方法返回"success",通常意味着操作成功,Struts2会根据这个返回值找到对应的视图进行渲染。
Struts2的基础知识包括以下几个方面:
1. **配置Struts2运行环境**:首先需要确保已经安装并配置了JDK,接着安装JavaWeb服务器,如Tomcat。然后下载Struts2框架的库文件,并将其复制到Web应用的`WEB-INF/lib`目录下。对于使用集成开发环境(IDE)如MyEclipse的情况,可以通过IDE内置的工具添加Struts2框架支持,自动导入所需的jar包。
2. **Struts2框架工作原理**:Struts2通过核心控制器Servlet(通常由`struts2-core-x.x.x.jar`中的`StrutsPrepareAndExecuteFilter`实现)拦截HTTP请求。当用户发起请求时,这个控制器会根据配置文件(`struts.xml`)解析请求,找到对应的Action类进行处理。Action类执行后,通过返回值决定跳转到哪个结果页面,这通常基于OGNL(Object-Graph Navigation Language)表达式。
3. **配置Struts2**:配置主要涉及`struts.xml`文件,其中定义了Action、Action的类映射、结果页面等。例如,配置Action时需要指定Action的name、class(Action类全名)以及不同的结果(result)。此外,还需要在`web.xml`中配置Struts2的过滤器,以便拦截并处理请求。
4. **Action和类型转换**:Action类可以接收HTTP请求参数,通过setter方法自动绑定。Struts2提供了类型转换机制,可以自动将请求参数转换为Action类中属性的类型,例如将字符串转换为整数或日期。在Action中,可以直接使用这些属性,无需手动获取请求参数。
5. **Struts2第一个例子**:通常从一个简单的应用开始,如登录功能。用户输入用户名和密码,Action类验证这些信息,如果验证通过则返回"success",否则返回错误信息。这个例子展示了Struts2如何处理表单数据并控制流程。
6. **Struts2框架的库文件**:每个库文件都有其特定的作用,如`struts2-core-x.x.x.jar`是Struts2的核心库,`xwork-x.x.x.jar`是WebWork的核心库,`freemarker-2.x.x.jar`用于视图渲染,`commons-fileupload-x.x.x.jar`和`commons-logging-x.x.x.jar`则分别处理文件上传和日志管理。
Struts2是一个强大的MVC框架,通过Action类实现业务逻辑,结合配置文件实现请求到响应的映射,同时提供了丰富的功能,如类型转换、异常处理、国际化等,简化了Java Web应用的开发。