zoukankan      html  css  js  c++  java
  • Struts2框架复习(一)--最基本的struts2框架

    前言

    最近离职在家,发现之前学习的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-INFclasses文件夹下,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
    结果如下:

  • 相关阅读:
    生成前N个自然数随机置换的3个程序
    网络流媒体协议之——RTSP协议
    海思屏幕HAL代码解析
    事件路由
    hi3559v100 sdk中双系统AMP架构的初步了解
    LCD RGB 控制技术 时钟篇(下)【转】
    liteos C++支持(十七)
    liteos MMU(十八)
    APP接口做什么?
    APP如何进行通信的
  • 原文地址:https://www.cnblogs.com/Lenbrother/p/6413216.html
Copyright © 2011-2022 走看看