美文网首页
首次接触Struts2框架(二)

首次接触Struts2框架(二)

作者: Double_Z_ | 来源:发表于2017-03-16 21:05 被阅读0次

这节主要讲讲Struts的核心配置及一些概念。

1.1.  Struts.xml文件

大家都知道这是其用于配置Action和请求对应关系的文件,其在文件夹中的位置在WEB-INF/classes目录下,盖文佳课陪Struts框架自动加载,而在编译时其位置通常为eclipse放在src下。

这是一个典型的Struts的配置。<Struts>是根元素的配置,<constant>用于常量的配置。(也可在struts.properties文件中进行常量配置)。<package>配置包,其须指定name值,和其Action的类名class。

1.2 Action的配置

实现Action控制器的方式有三种

(1) POJO的实现

            Action可以不继承特殊的类或者不实现任何特殊的接口,只用一个POJO(要有一个公共Java对象),只要你具有一部分getting/setting方法就可以称作POJO,在这个POJO中有一个公共的无参构造方法及一个execute()方法。

(2) 实现Action接口

             Action接口定义了Struts的Action处理器,用户在实现Action控制器的时,可以实现Struts提供的这个接口。

(3) 继承ActionSupport类

这个方法是最常用的方法,其本身就实现了Action接口,是Struts2中默认的Action接口的实现类。

1.3 使用通配符

为了减轻Struts.xml文件的负担,这是就可以使用通配映射符

这样当科幻发送请求/userAction_login.action这样的请求的时候,<action>的值就陪设置成login。当客户端发送/userAction_register.action这样的请求时,<action>元素的name属性就被设置成register。另外对于<result>元素也可以进行通配符配置。

1.4 动态方法调用。

在Action的名字中使用感叹号来表示要调用的方法名称。格式:

使用动态方法调用的方式将请求提交给Action是,表单中的每一个按钮提交事件都交给同一个Action,只是对应Action中的不同方法。这样的话,就只需要配置改Action,而不用去配置每个方法了。

但是这一种方法官网上并不推荐,因为通过URL可以执行Action中的任意方法。

2  Action访问Servlet API

在Strut2中不能直接进行访问Servlet API ,但是其的解耦会带来很多好处,方便进行Action的单元测试。

在Struts中访问Servlet API有三种方式。

2.1 通过ActionContext类访问

这里举例说明:

ActionContext context=ActionContext.getContext();

方一:context.getSession().put("username", user.getUsername());

方二:context.put("username", user.getUsername());

方三:context.getApplication().put("username",  user.getUsername());

2.2  通过特定接口访问

上面那种方不能直接获得Servlet API实例。所以Struts提供了一系列接口,像ServlerRequestAware(可直接访问web应用的HTTPServletRequest实例),ServlerResponseAware

(可直接访问web应用的HTTPServletResponse实例)等等。

2.3 通过servletActionContext访问

为了直接访问Servlet API实例,Struts提供了servletActionContext类,其包含一些静态的方法以用于直接访问。

综上,三种方式还是所选ActionContext,以避免与API耦合。

相关文章

  • 首次接触Struts2框架(二)

    这节主要讲讲Struts的核心配置及一些概念。 1.1. Struts.xml文件 大家都知道这是其用于配置Act...

  • 首次接触Struts2框架(一)

    今天学习了我的第一个框架->Struts2,学习它如何配置,如何使用,及其用框架实现简单的跳转和登录。 Strut...

  • 运行Struts2框架时,出现404错误

    运行错误 刚开始接触Struts2,利用Struts2框架写了一个简单的登录界面,当点击运行run时,出现下边的错误

  • 15_Spring SSH整合准备

    SSH框架 SSH = Struts2 + Spring + Hibernate Struts2框架整合所需jar...

  • maven学习 Day3 2018-11-21

    二、Maven实战 3.通过maven整合ssh框架 3.1 搭建struts2环境 创建struts2配置文件:...

  • 2. Struts2 基础

    1. Struts2简介 Struts2是一个WEB端MVC框架。作为比较早的MVC 框架之一,Struts2在使...

  • 关于 中/与/*的区别

    前言:在框架的使用中,如果只没有使用spring框架 ,用到struts2框架时候,我们的struts2底层机制...

  • 笔记之Struts2工作原理

    Struts2工作原理 struts2框架是SSH框架集中的框架之一,是一个基于MVC设计模式的Web应用框架,它...

  • Spring学习 一 Struts2 与 Spring 整合

    Struts2框架和Spring整合的关键点就是: 把Struts2框架Action对象的创建,交给Spring ...

  • 文件上传

    Struts2框架默认采用Commons-fileupload组件完成文件上传功能。 • 使用Struts2框架实...

网友评论

      本文标题:首次接触Struts2框架(二)

      本文链接:https://www.haomeiwen.com/subject/ndpjnttx.html