struts2入门

来源:互联网 发布:seo任务优化网站排名 编辑:程序博客网 时间:2024/06/04 19:42

struts2学习知识点路线

  • Action
  • 简单数据校验
  • Result
  • 常用配置文件
  • OGNL&ValueStack
  • Tags(标签)

—————————Project

  • 类型转换、上传与下载、interceptor、防止重复提交
  • MVC思想深入剖析
  • 源码解读
  • 其他话题
    校验框架、l18N、AJAX、FreeMarker、异常处理

本文章现阶段使用的struts2使用的版本为2.5

在项目中所依赖的最基本jar包:

  • commons-fileupload-1.3.1.jar 文件上传组件依赖包;
  • commons-io-2.4.jar 文件输入输出,传文件依赖jar包;
  • commons-lang-2.4.jar 包含一些数据类型工具,是对java.lang包的增强;
  • commons-lang3-3.5.jar 在项目中也许加入此包,否则报错,与commons-io-2.4.jar不冲突
  • commons-logging-1.1.3.jar 日志管理组件依赖包;
  • freemarker-2.3.23.jar struts2的标签模板使用的类库;
  • javassist-3.20.0.GA.jar JavaScript 字节码解释器;
  • ognl-3.1.4.jar 对象图导航语言(Object Graph Navigation Language),Struts2框架通过其读写对象的属性;
  • struts2-core-2.5.jar struts2框架的核心类库;
  • log4j-api-2.5.jar struts2的日志管理组件依赖包;
  • asm-3.3.jar 操作java字节码类库;
  • asm-commons-3.3.jar 提供了基于事件的表现形式;
  • asm-tree-3.3.jar 提供了基于对象的表现形式;

在上面的基础jar包中,你会发现没有了xwork-core的jar包,这是因为。2.5版本之后,将其合并到struts2-core-2.5.jar 中了。

web.xml配置

<filter>        <filter-name>struts2</filter-name>        <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>  </filter>  <filter-mapping>       <filter-name>struts2</filter-name>       <url-pattern>/*</url-pattern>  </filter-mapping>

这里配置的就是核心过滤器

注意2.5版本后需要做如下修改(对于这里的小实例2没用到)
1、
修改web.xml,把
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
修改成
org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
我们可以把struts2-core-2.5.jar用解压方式打开一看就知道

2、
修改jsp的struts标签,新版本里有两处明显区别
a.类似
要修改成
b.类似
要修改成

helloWorld小示例
写一个HelloWorldStruct类

public class HelloWorldAction extends ActionSupport{    @Override    public String execute() throws Exception {        System.out.println("正在执行的Action");        // 返回逻辑视图SUCCESS        return SUCCESS;    }}

struts.xml配置
在src目录下新建一个struts.xml的文件
指定Struts2配置文件的DTD信息

<!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN""http://struts.apache.org/dtds/struts-2.5.dtd"><struts>    <!--<constant name="struts.enable.DynamicMethodInvocation" value="true" />-->    <package name="default" namespace="/" extends="struts-default">    <!-- strict-method-invocation="false" -->        <action name="helloworld" class="com.struts.one.HelloWorldAction">            <!-- 结果集,即action中SUCCESS返回的视图 -->            <result>                /index.jsp            </result>        </action>    </package></struts>  

运行结果
运行部署成功后,输入http://localhost:8080/StrutsTest/helloworld.action运行得到结果
这里写图片描述
一个struts2的入门小程序成功完成。

0 0
原创粉丝点击