前言

最近离职在家,发现之前学习的Struts2框架由于长时间不使用有点生疏,有鉴于此写下此文以备自己复习使用,同时也供大家批评指正。

准备工作

我觉得Struts2主要就是对Servlet的封装,还有些其他功能。所以建议先学好了Servlet再学Struts2。我当时是在培训机构学的,开始不懂后来做多了,也就明白一些了。

本文基于JDK7,Struts2.3,Tomcat7,eclipse进行操作的。

使用Eclipse新建一个Java Web项目,如下图:(记得把项目编码改成UTF-8的,要不会出现中文乱码的)

注意:一定要勾选上面图片的生成web.xml的对号,否则要自己手动生成。

导包

下面的图片的图片是struts2.3的jar包,下载路径:https://pan.baidu.com/s/1kUVMtYR。

![](http://images2015.cnblogs.com/blog/694294/201702/694294-20170218151305238-751980643.png)

每个包的具体作用如下:

将上面的包放入项目的/WebContent/WEB-INF/lib中。

配置web.xml

Struts2是通过filter(拦截器)来启动的,因此web.xml需要为Struts2配置拦截器。

如图在org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter的init()(初始化)方法中将会自动搜索并读取struts.xml完成初始化操作。

注意:Struts2.1.3以下版本的Struts2拦截器对应的类是org.apache.struts2.dispatcher.FilterDispatcher

Struts2.1.3以上版本的Struts2拦截器对应的类是org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter (本处用的是2.3所以是该类)

配置struts.xml

在项目的src目录下新建struts.xml(名字不能改,必须是小写的struts.xml)。

注意:有很多人说在src目录下建立struts.xml,有人说在项目的/WebContent/WEB-INF目录下新建struts.xml。其实都一样,因为src目录是项目默认的Source Folder文件,src下面的.Java文件都编译成了.class文件放入WEB-INF\classes文件夹下,xml文件也会被放在WEB-INF文件夹下。

上面只是个空的struts配置文件,主要是这个头文件是文本类别是

配置Action

struts2拦截到页面请求以后就会到struts.xml去查找对应的action处理请求。

新建包com.demo.action,新建类LoginAction.java,继承自com.opensymphony.xwork2.ActionSupport(也可以不必继承主要是为了方便)。

新建一个String属性message,生成setter和getter方法。

新建一个String方法execute()。还是上图方便。

展示页面

在项目的WebContent目录下新建index.jsp页面,页面内容如下:



注意:这个页面一定在WebContent下,不要写在WEB-INF下。

完善struts.xml

接下来就要把Action和展示页面配置到struts.xml中了。

启动测试

就项目放入tomcat中,启动tomcat,然后访问 http://localhost:8080/Struts2_DEMO/user/login

结果如下:

Struts2框架复习(一)--最基本的struts2框架的更多相关文章

  1. (转)struts2:数据校验,通过XWork校验框架实现(validation.xml)

    转载自:http://www.cnblogs.com/nayitian/p/3475661.html struts2:数据校验,通过XWork校验框架实现(validation.xml)   根据输入 ...

  2. struts2:数据校验,通过XWork校验框架实现(validation.xml)

    根据输入校验的处理场所的不同,可以将输入校验分为客户端校验和服务器端校验两种.服务器端验证目前有两种方式: 第一种: 参考:struts2:数据校验,通过Action中的validate()方法实现校 ...

  3. struts2针对mvc的框架 spring针对解耦与事务的框架

    struts2针对mvc的框架 spring针对解耦与事务的框架

  4. [struts2学习笔记] 第五节 编写struts2的action代码

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/40479299 官方文档: http://struts.apache.org/relea ...

  5. Struts2(三.用户登录状态显示及Struts2标签)

    1.编写main.jsp /WebContent/main.jsp 之前用户登录时已把用户存入session <%@ page language="java" content ...

  6. Spring框架的第四天(整合ssh框架)

    ## Spring框架的第四天 ## ---------- **课程回顾:Spring框架第三天** 1. AOP注解方式 * 编写切面类(包含通知和切入点) * 开启自动代理 2. JDBC模板技术 ...

  7. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(1)-框架搭建

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(1)-框架搭建 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) 前言:这篇博客开始我们便一步一步的来实现这 ...

  8. .NET框架设计(常被忽视的框架设计技巧)

    阅读目录: 1.开篇介绍 2.元数据缓存池模式(在运行时构造元数据缓存池) 2.1.元数据设计模式(抽象出对数据的描述数据) 2.2.借助Dynamic来改变IOC.AOP动态绑定的问题 2.3.元数 ...

  9. 动端逐渐出了许多的移动端的框架,比如Sencha Touch、JQTouch、Jquery-moblie、jqMobi等等。这些框架都有优缺点,不同的框架应用在不同的项目中。现简单阐述一下各框架的优缺点:

    移动前端工作的那些事---前端制作之微信小技巧篇   (2013-11-15 15:20) 转载▼ 标签: it css3/javascript html5 webapp 手机网站搭建 分类: 前端制 ...

  10. 通过Ruby On Rails 框架来更好的理解MVC框架

    通过Ruby On Rails 框架来更好的理解MVC框架   1.背景    因为我在学习软件工程课程的时候,对于 MVC 框架理解不太深入,只是在理论层面上掌握,但是不知道如何在开发中使用 MVC ...

随机推荐

  1. Spring+Spring MVC+Hibernate增查(使用注解)

    使用Spring+Spring MVC+Hibernate做增删改查开发效率真的很高.使用Hibernate简化了JDBC连接数据库的的重复性代码.下面根据自己做的一个简单的增加和查询,把一些难点分析 ...

  2. HDU_1024_dp

    Max Sum Plus Plus Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others ...

  3. POJ_1611_The Suspect

    The Suspects Time Limit: 1000MS   Memory Limit: 20000K Total Submissions: 25149   Accepted: 12329 De ...

  4. orb slam2

  5. nginx+tomcat+memcache

    tomcat1和tomcat2都需要安装以下配置[root@tomcat-1 ~]# yum -y install gcc openssl-devel pcre-devel zlib-devel[ro ...

  6. 模板—splay

    #include<iostream> #include<cstdio> #define cin(x) scanf("%d",&x) using na ...

  7. C++ map使用总结

    0. Backgroud 此文章源于博主(sunshinewave),转到自己博客以后方便查看 map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次, ...

  8. 移动端响应式rem

    (function (doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? ...

  9. 后台工具screen

    之前在putty之类的远程命令行操作服务器的时候,遇到关闭软件,对应的操作就会关闭.很多时候,就是开着电脑,然后挂在那里,虽然不用电脑跑,但是也耗电...主要是putty这些软件有时候会伴随黑屏崩掉. ...

  10. F - Shooter

    UVA___10535 The shooter is in a great problem. He is trapped in a “2D” maze with a laser gun and can ...