2017-8-9 Struts2学习笔记一

来源:互联网 发布:oracle查找重复数据 编辑:程序博客网 时间:2024/05/16 19:24

一、Struts2的jar包下载
1.从struts2的官网下载,struts2官网

struts2官网截图

2.由于我的tomcat版本是8.0,使用最新版struts 2.5时会报错,网上查了很久,有人说是bug,将tomcat提升到9就不会报错,我的tomcat不想再改了,再改比较麻烦。所以退而其次,使用Struts2.3的jar包。点击上图的download,往下翻,就是2.3。

Struts2.3

  1. 下载完成后,解压,目录如下

enter description here

二·、新建Struts2项目用到的jar包 说明:以下jar包都没有写版本号,对着lib目录下就能找到
1.在lib目录下的jar包并不是全部用到的,我们可以测试一个最基本的struts2项目所需的jar包
2.首先,要导入struts2-core.jar,这是核心的struts2 jar包,另外还有xwork-core.jar,struts2是由webwork框架的基础上开发的,底层都是xwork。如果你用的是struts2.5的话,只需先导入struts2-core即可,因为xwork-core已经放入了struts2-core.
3.启动服务器tomcat,从控制台下面开始找java.lang.ClassNotFoundException这个异常,这个异常是没有找到类,说明缺少jar包

ognl未找到
4.ognl.jar,导进去,重启服务器

javassist未找到
5. javassist.jar,导进去,重启服务器

lang3未找到
6. commons-lang3.jar,导进去,重启服务器

fileupload未找到
7. commons-fileupload.jar,导进去,重启服务器

freemarker未找到
8. freemarker.jar ,导进去,重启服务器

io未找到
9. commons-io.jar ,导进去,重启服务器
10. 测试完成,没有再报异常,说明最基本的就是以上几个jar包,如果需要增添其他功能,则需要添加其他jar包。
三、Struts2注解所要用的jar包

1. 与上面一样,导入插件jar包,struts2-convention-plugins.jar,这个是struts2注解的插件包,重启服务器

asm未找到

2. asm.jar,导进去,重启服务器3. 测试一个注解的简单例子,一个简单的action,和一个result.jsp页面,还有struts.xml,web.xml。重启服务器。配置struts.xml的文件的目的是指向result.jsp,如果不配置struts.xml,可以将result.jsp放在/WEB-INF/content/下面,这是默认的目录,struts.xml文件中常量struts.convention.result.path的value默认值是/WEB-INF/content/。**注**: 如果使用struts2.5,web.xml的过滤器的路径是org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter,而2.3的路径是org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

xml文件配置

项目目录

action文件内容

web.xml

4. 继续报异常,还是缺少类这个异常

缺少asm-commons

5. asm-commons.jar ,导进去,重启服务器6. 无异常,在浏览器输入http://localhost:8080/Struts2-Convention/demo,成功访问result.jsp

result