Struts2学习(二)运行Action中方法的三种方式

1.运行execute()方法

一般的能够直接在action中书写execute,调用action时会自己主动运行此方法

2.配置method方法

在struts.xml中配置action时。写method属性设置方法。例如以下所看到的。这样写能够在一个action类中写多个运行的方法。简化结构。

<package name="user" extends="struts-default" namespace="/user">
        <action name="userAdd" class="com.bjsxt.struts2.user.action.UserAction" method="add">
            <result>/user_add_success.jsp</result>
        </action>
</package>

action类中写一个返回String类型的add()方法就可以

public class UserAction extends ActionSupport {
    public String add() {
        return SUCCESS;
    }

3.利用通配符

举个样例就能够明确:

<package name="actions" extends="struts-default" namespace="/actions">
        <action name="Student*" class="com.bjsxt.struts2.action.StudentAction" method="{1}">
            <result>/Student{1}_success.jsp</result>
        </action>

        <action name="*_*" class="com.bjsxt.struts2.action.{1}Action" method="{2}">
            <result>/{1}_{2}_success.jsp</result>
            <!-- {0}_success.jsp -->
        </action>
    </package>

上面第一个action中。能够匹配一个action中的不同方法,第二个action能够匹配不同的action中的不同方法。这样写相当于设置了一种规则,既简化了struts.xml的书写。又使项目结构变得清晰。

时间: 2024-12-16 19:54:09

Struts2学习(二)运行Action中方法的三种方式的相关文章

struts2学习笔记之八:Action中方法的动态调用

方法一:action名称+!+方法名称+后缀 Action类中增加addUser()和delUser()方法, package com.djoker.struts2; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.Action; public class UserAction { private String username; private String password; pri

面试题:增强一个对象的方法的三种方式

面试题:增强一个对象的方法的三种方式 1. 继承 使用这种方式必须满足的条件是:被增强的方法的所在类能被继承,并且这个对象已经明确知道. 举例: 有一个接口Person,里面有一个方法run() package com.itzhouq.demo1; public interface Person { public void run(); } 类NormalPerson实现了这个接口Person package com.itzhouq.demo1; public class NormalPerso

继承关系中的第三种方式:利用&lt;union-subclass&gt;(补充)

继承关系中的第三种方式:利用<union-subclass>   代码:   映射文件(其他的代码和其他继承关系相同)   Person.hbm.xml   <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/

Spring学习(二)spring ioc注入的三种方式

一.spring ioc注入有哪三种方式: a setter 原理 : 在目标对象中,定义需要注入的依赖对象对应的属性和setter方法:"让ioc容器调用该setter方法",将ioc容器实例化的依赖对象通过setter注入给目标对象,封装在目标对象的属性中. b 构造器 原理 : 为目标对象提供一个构造方法,在构造方法中添加一个依赖对象对应的参数.ioc容器解析时,实例化目标对象时会自动调用构造方法,ioc只需要为构造器中的参数进行赋值:将ioc实例化的依赖对象作为构造器的参数传入

JS中创建对象的三种方式

<script> 2 //创建对象的三种方式 3 // 1.利用对象字面量(传说中的大括号)创建对象 4 5 var obj1 = { 6 uname: 'ash', 7 age: 18, 8 sex: "女", 9 sayhi: function() { 10 console.log("hello kitty"); 11 12 } 13 } 14 15 //访问属性的两种方法 16 console.log(obj1.uname); 17 console

Struts2中Action接收参数的三种方式

Struts2中Action接收参数的方法主要有以下三种:1.使用Action的属性接收参数:    a.定义:在Action类中定义属性,创建get和set方法:    b.接收:通过属性接收参数,如:userName:    c.发送:使用属性名传递参数,如:user1!add?userName=zhangsan:2.使用DomainModel接收参数:    a.定义:定义Model类,在Action中定义Model类的对象(不需要new),创建该对象的get和set方法:    b.接收

Action访问ServletAPI的三种方式

一.前言 Struts是一种基于MVC设计模式的web应用框架,主要担任C的角色,用于分离页面显示和业务逻辑处理,那其实在我们学习jsp的时候学过一个具有类似功能的东西--servlet.其实Struts本质上相当于servlet,可以理解Struts是对servlet的进一步封装和抽象.那么在servlet里面使用的对象,在Struts里面同样也是可以使用的,这也是这一章的主要内容. 二.传统的Web程序和Web容器传递数据的方法 HttpServletRequest的getParameter

SQL Server中Upsert的三种方式

本文介绍了SQL Server中Upsert的三种常见写法以及他们的性能比较. SQL Server并不支持原生的Upsert语句,通常使用组合语句实现upsert功能. 假设有表table_A,各字段如下所示: int型Id为主键. 方法1:先查询,根据查询结果判断使用insert或者update IF EXISTS (SELECT 1 FROM table_A WHERE Id = @Id) BEGIN UPDATE dbo.table_A SET Value = @Value WHERE

实现JavaScript中继承的三种方式

一.原型链继承  在原型链继承方面,JavaScript与java.c#等语言类似,仅允许单父类继承.prototype继承的基本方式如下: 代码如下: function Parent(){} function Child(){} Child.prototype = new Parent(); 通过对象Child的prototype属性指向父对象Parent的实例,使Child对象实例能通过原型链访问到父对象构造所定义的属性.方法等.  构造通过原型链链接了父级对象,是否就意味着完成了对象的继承