java strtus2 DynamicMethodInvocation配置(二)

前面一章讲了下动态配置的方法。那样,能够直接动态的调用action里面的方法,

这里展示一种配置更少,更简洁的一种方法。

在前一章其他不变的情况下,改变配置文件

    <package name="Menu" namespace="/Menu" extends="struts-default">
       <action name="*" class="com.almostman.action.{1}Action" >
         <result name="success">/success.jsp</result>
         <result name="input">/input.jsp</result>
       </action>
    </package>

这里的 “*” 表示你输入的内容,{1}表示第一个*的内容,这里具体调用的method不用去指定,因为用了动态调用,方法可以直接通过 “!”去调用。

MainPageAction.java
package com.almostman.action;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;

import com.opensymphony.xwork2.ActionSupport;

public class MainPageAction extends ActionSupport{

    /**
     *
     */
    private static final long serialVersionUID = 1L;

    @Override
    public String execute() throws Exception {

        if("admin".equals(username) && "admin".equals(password)){
            return SUCCESS;
        }

        return INPUT;
    }

    public String init() throws Exception {

        if("admin".equals(username) && "admin".equals(password)){
            return SUCCESS;
        }

        return INPUT;
    }
    public String add() throws Exception {

        if("admin".equals(username) && "admin".equals(password)){
            return SUCCESS;
        }

        return INPUT;
    }

    private String username;
    private String password;

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

这里的调用URl是

http://localhost:8081/struts013/Menu/MainPage!init.action?username=admin&password=admin

通过Action名和方法直接进行了访问,甚至返回都可以用通配符固定返回的页面也和调用的一样,这样名字都不用去想不同的。

源码:http://pan.baidu.com/s/1kULwCIj

时间: 2024-10-07 06:29:28

java strtus2 DynamicMethodInvocation配置(二)的相关文章

java strtus2 DynamicMethodInvocation配置入门

这里来讲解一下strtus2动态配置的用法. 配置之后不用通过 <action method="">去配置调用的具体方法. 第一:web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi=&qu

Spring中基于Java的容器配置(二)

使用@Configuration注解 @Configuration注解是一个类级别的注解,表明该对象是用来指定Bean的定义的.@Configuration注解的类通过@Bean注解的方法来声明Bean.通过调用注解了@Bean方法的返回的Bean可以用来构建Bean之间的相互依赖关系,可以通过前文来了解其基本概念. 注入inter-bean依赖 当@Bean方法依赖于其他的Bean的时候,可以通过在另一个方法中调用即可. @Configuration public class AppConfi

基于Java的Arc Engine二次开发的环境的配置

1.软件准备 ArcGIS for Desktop 10.2, Arc engine, jdk-7u60-windows-i586,Eclipse Mar2 2.软件的安装 2.1 ArcGIS for Desktop 10.2的安装 软件的下载:ArcGIS for Desktop 10.3全套的下载:http://pan.baidu.com/s/1o7F4yue,附带破解方法 本文使用的是10.2,其下载路径与安装破解方法如:http://jingyan.baidu.com/article/

Java Web学习(二) Eclipse的配置

Java Web学习(二) Eclipse的配置 一.下载Eclipse 1.进入Eclipse官网,进行下载 上图,下载Eclipse IDE for JaveEE Developers 版本,然后根据windows系统32位或64位,进行选择(建议64位).如果你的机器内存过小,可以选择Eclipse的旧版本:Eclipse Indigo .Eclipse Juno . Eclipse Kepler 等版本. 2.解压缩安装 打开压缩包,将里面的Eclipse 拖出到指定位置,进行解压缩.

ckeditor编辑器在java项目中配置

一.基本使用: 1.所需文件架包 A. Ckeditor基本文件包,比如:ckeditor_3.6.2.zip 下载地址:http://ckeditor.com/download 2.配置使用 A.将下载下来的CKEditor压缩解压,将解压后的文件夹("ckeditor")拷贝进项目里面,比如我是放在"WebContent"的"commons"文件夹下: B.在需要使用CKEditor的页面引入CKEditor的支持javascript <

Sublime Text3 C++及Java开发环境配置

一.C++开发环境配置 1. 下载MingW 2. 环境变量配置,系统属性->高级设置->环境变量,如果Mingw装在c盘更目录,其它自己思考 (1)PATH  变量值中加入 C:\MinGW\bin (2)LIBRARY_PATH  变量值中加入 C:\MinGW\lib, (3)C_INCLUDEDE_PATH  变量值中加入 C:\MinGW\include 用Sublime Text3 新建C++ 编译系统,设置为以下代码: { "cmd": ["g++&

Java深度历险(二) EJB Session Bean有状态和无状态的区别与联系

刚开始对两种sessionbean存在误解,认为有状态是实例一直存在,保存每次调用后的状态,并对下一次调用起作用,而认为无状态是每次调用实例化一次,不保留用户信息.仔细分析并用实践检验后,会发现,事实恰好相反:有状态和无状态会话bean的本质区别是它们的生命期. 首先解释一个下面要用到的概念--用户:sessionbean 的用户实际上就是直接调用ejb的类的实例,甚至是这个实例的某个方法.同一个类的不同实例对于session bean来说是不同的用户. 实例解析 有状态的StatefulEjb

java RPC系列之二 HTTPINVOKER

java RPC系列之二  HTTPINVOKER 一.java RPC简单的汇总 java的RPC得到技术,基本包含以下几个,分别是:RMI(远程方法调用) .Caucho的Hessian 和 Burlap .Spring的基于HTTP的远程服务.以及使用JAX-RPC和JAX-WS的Web服务.本文主要介绍spring的httpinvoker的基本的配置实现. 二.Spring的httpinvoker的配置实现 基本步骤:       1.定义好服务端需要提供的接口方法(客户端调用的接口):

【Java】java数据库连接池配置的几种方法

今天遇到了关于数据源连接池配置的问题,发现有很多种方式可以配置,现总结如下,希望对大家有所帮助:(已Mysql数据库为例) 一,Tomcat配置数据源: 方式一:在WebRoot下面建文件夹META-INF,里面建一个文件context.xml,内容如下: <Context>      <Resource name="jdbc/test" auth="Container" type="javax.sql.DataSource"