`
Sharpleo
  • 浏览: 573844 次
  • 性别: Icon_minigender_1
  • 来自: newsk
社区版块
存档分类
最新评论

struts2 注解

    博客分类:
  • j2ee
阅读更多
使用注解来配置Action的最大好处就是可以实现零配置,但是事务都是有利有弊的,使用方便,维护起来就没那么方便了。

要使用注解方式,我们必须添加一个额外包:struts2-convention-plugin-2.x.x.jar。
总结常用的注解如下:

Namespace:指定命名空间。

ParentPackage:指定父包。

Result:提供了Action结果的映射。(一个结果的映射)

Results:“Result”注解列表

ResultPath:指定结果页面的基路径。

Action:指定Action的访问URL。

Actions:“Action”注解列表。

ExceptionMapping:指定异常映射。(映射一个声明异常)

ExceptionMappings:一级声明异常的数组。

InterceptorRef:拦截器引用。

InterceptorRefs:拦截器引用组。


package com.kingzheng.htwy.goodsPlan.action;

import javax.annotation.Resource;

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 org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;


/**
 * 物资计划控制器
 * @author kings.chan
 *
 */
@Controller("GoodsPlanAction")
@Scope("prototype")
@ParentPackage("struts-default")
@Namespace("/goodsplan")
public class GoodsPlanAction {
	private String currentPage;// 当前页
	private MainDatasouse1 mainbean;
	private GoodsPlanServ serv;
	public MainDatasouse1 getMainbean() {
		return mainbean;
	}
	public void setMainbean(MainDatasouse1 mainbean) {
		this.mainbean = mainbean;
	}
	@Resource(name="GoodsPlanServImpl")
	public void setServ(GoodsPlanServ serv) {
		this.serv = serv;
	}
	public String getCurrentPage() {
		return currentPage;
	}
	public void setCurrentPage(String currentPage) {
		this.currentPage = currentPage;
	}
	/***
	 * 主数据1查询
	 * @return
	 */
	@Action(value="main1_search",results={@Result(name="success",location="/WEB-INF/jsp/htwy/goodsplan/main1.jsp")})
	public String mainDataSouse1Search()
	{
		try {
			serv.mainDatasouseSearch(this);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return "success";
	}
	/***
	 * 主数据1编辑
	 * @return
	 */
	@Action(value="main1_edit",results={@Result(name="success",location="/WEB-INF/jsp/htwy/goodsplan/main1_edit.jsp")})
	public String mainDataSouse1Edit()
	{
		try {
			serv.mainDatasouseEdit(this);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return "success";
	} 
}


带参数的注解:{key1,value1,key2,value2}

@Action(value="treeAction_subOrg",results={   
            @Result(name=SUCCESS,type="stream",params={"contentType","text/html;charset=UTF-8","inputName","json"})   
    }) 
  
配置action:
/** 

 * Struts2基于注解的Action配置

 *  

 */   

@ParentPackage("struts-default") 

@Namespace("/annotation_test") 

@Results( { @Result(name = "success", location = "/main.jsp"), 

        @Result(name = "error", location = "/error.jsp") }) 

@ExceptionMappings( { @ExceptionMapping(exception = "java.lange.RuntimeException", result = "error") }) 

拦截器配置:
@ParentPackage("custom-default")
@InterceptorRefs(@InterceptorRef("checkLoginStack"))
@Results( { @Result(name = SUCCESS, location = "/redirect.jsp"),
		@Result(name = "input", location = "/login.jsp") })
public class LoginAction extends ActionSupport {
	public String param = null;
	private static final long serialVersionUID = -7146549074248299166L;
	private Logger LOG = Logger.getLogger(LoginAction.class);

	public String execute() {
		LOG.info(param);
		Map<String, Object> session = ActionContext.getContext().getSession();
		if (param.equals("1")) {
			session.put("user", "123");
			return SUCCESS;
		} else {
			session.remove("user");
			return "input";
		}
	}
}

分享到:
评论
1 楼 peter2009 2013-03-13  
想问问 XML是怎么配置的

为什么我加入这个包的时候会有这个错误

Unable to load configuration. - bean - jar:file:/E:/WorkProject/LSHPharse2/SXFrameWork/WebRoot/WEB-INF/lib/struts2-convention-plugin-2.3.8.jar!/struts-plugin.xml:32:155

相关推荐

    Struts2注解开发jar

    标题提到的"Struts2注解开发jar"主要指的是`struts2-convention-plugin`,这是一个Struts2的插件,它的主要作用是支持基于约定优于配置(Convention over Configuration)的开发模式。描述中提到的`struts2-...

    struts2注解登陆

    Struts2注解登录是Java Web开发中一种简化配置的方式,它允许开发者在代码中直接定义控制器、动作和结果页面的映射,从而避免了传统方式下需要在`struts.xml`配置文件中的繁琐设置。这种做法提高了代码的可读性和可...

    Struts2 注解 Demo

    本教程将通过一个"Struts2注解Demo"来深入探讨Struts2中的注解用法,帮助开发者更高效地配置和管理Action类。 首先,Struts2的注解允许我们避免传统的XML配置,从而实现更加简洁、直观的编程方式。在`Struts2Demo`...

    Maven实现struts2注解

    &lt;constant name="struts.objectFactory" value="struts注解工厂类全限定名,比如:org.apache.struts2.spring.StrutsSpringObjectFactory" /&gt; &lt;package name="default" extends="struts-default"&gt; ...

    struts2注解与拦截器demo

    该例子为struts2注解与拦截器demo,利用myEclipse8.5开发,导入刚才后,自动加载所需struts2的jar包,可以直接运行,是初学struts2注解、拦截器很好的例子,保证10分钟学会2种技术,愿意分享给大家。

    struts2注解详解

    ### Struts2 注解详解 #### 一、Struts2 Convention 插件介绍与使用 在 Struts2 框架的发展过程中,随着版本的更新和技术的演进,其配置方式也发生了变化。从 Struts2.1 版本开始,官方不再推荐使用 Codebehind ...

    Struts2注解详细说明文档

    ### Struts2注解详细说明 #### 一、概述 Struts2框架是Apache软件基金会下的一个开源项目,它提供了一种构建企业级Java Web应用的解决方案。自Struts2.1版本开始,引入了一个重要的插件——Convention Plugin,该...

    struts2注解必须包

    "struts2注解必须包"指的是Struts2提供的一系列注解,它们对于简化Struts2应用的配置和增强其功能至关重要。 标题中的"struts2-convention-plugin-2.1.8.1.jar"是Struts2的约定插件(Convention Plugin)的一个特定...

    struts2注解小实例

    在这个小实例中,我们将深入探讨如何利用Struts2的注解来构建一个简洁而高效的Web应用。 首先,让我们了解什么是注解。在Java中,注解是一种元数据,它提供了一种安全的方法来向编译器、JVM或框架提供信息。Struts2...

    struts2注解配置Action及拦截器几种不同方式写法对应的路径指向.docx

    "Struts2 注解配置 Action 及拦截器几种不同方式写法对应的路径指向" Struts2 注解配置 Action 及拦截器是 Struts2 框架中的核心组件之一,负责处理用户请求并返回响应结果。下面,我们将通过详细的解释和示例代码...

    struts2注解配置全面解析

    ### Struts2注解配置全面解析 #### 一、引言 随着Struts2框架的不断更新和发展,很多开发者在尝试使用注解方式进行配置时往往会遇到不少难题。尤其是在使用Struts2.1及以上版本时,由于大部分教程和资料仍然基于...

    Struts2框架及注释和用法

    下面我们将深入探讨Struts2的关键概念、注释以及使用方法。 **1. Struts2架构** Struts2的核心是Action类,它是处理用户请求的入口点。每个Action对应一个业务逻辑,当用户发起请求时,Struts2会根据配置文件(如...

    Struts2+spring注解配置

    Struts2 和 Spring 的整合是企业级 Java Web 开发中常见的技术栈,通过注解配置可以使项目更加简洁、易于维护。Struts2 提供了一种使用注解替代 XML 配置的方式,使得开发者无需编写繁琐的 struts.xml 文件,即可...

    Struts2注解配置教程

    Struts2注解配置教程是指导开发者如何使用Java注解替代传统的XML配置来配置Struts2框架的一个教程系列。本文档主要涵盖了Struts2中注解配置的一些基本知识点以及如何通过注解实现零配置。 ### 注解配置之前 在介绍...

    struts2注解配置

    Struts2注解配置是Java Web开发中一种高效、简洁的框架配置方式,它允许开发者在类或方法级别上直接定义Action、结果类型、参数映射等信息,从而避免了传统XML配置文件的繁琐。本资料集合了关于Struts2注解配置的...

    Struts2注解使用说明

    ### Struts2注解使用详解 #### 一、引言 在Java Web开发领域,Struts2框架以其灵活的架构和强大的功能深受开发者喜爱。传统上,Struts2的配置依赖于XML文件,如`struts.xml`,这在大型项目中可能会导致配置文件...

    spring和Struts2注解文档

    在IT领域,特别是Java开发框架中,Spring和Struts2都是极为重要的技术栈,它们各自通过注解(Annotation)机制提供了强大的功能扩展性和代码简洁性。以下是对Spring和Struts2注解的深入解析和使用指南。 ### Spring...

    Struts2注解

    Struts2注解是Struts2框架中的一种简化配置的方式,允许开发者在代码中直接进行配置,无需在XML文件中进行繁琐的设置。这提高了开发效率,并使得代码更具有可读性。 一、配置web.xml 在Struts2中,web.xml是部署...

    struts2注释

    Struts2注释是Struts2框架中一种重要的元数据表达方式,它允许开发者在Java代码中直接标注信息,以简化配置文件的管理和提高开发效率。Struts2框架支持两种主要的配置方式:XML配置和注解(Annotation)配置。 XML...

Global site tag (gtag.js) - Google Analytics