注解—Action(@Controller)
来源:互联网 发布:wdi数据库 编辑:程序博客网 时间:2024/05/16 12:54
import org.apache.struts2.convention.annotation.Action;import org.apache.struts2.convention.annotation.ExceptionMapping;import org.apache.struts2.convention.annotation.ExceptionMappings;import org.apache.struts2.convention.annotation.InterceptorRef;import org.apache.struts2.convention.annotation.Namespace;import org.apache.struts2.convention.annotation.ParentPackage;import org.apache.struts2.convention.annotation.Result;import org.apache.struts2.convention.annotation.ResultPath;import org.apache.struts2.convention.annotation.Results;import org.apache.struts2.interceptor.validation.SkipValidation;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Scope;import org.springframework.stereotype.Controller;import com.hpsvse.service.IEmpService;import com.opensymphony.xwork2.ActionSupport;import com.opensymphony.xwork2.validator.annotations.RegexFieldValidator;import com.opensymphony.xwork2.validator.annotations.RequiredStringValidator;import com.opensymphony.xwork2.validator.annotations.Validations;@Controller //用于标注控制层组件(如struts中的action)@ParentPackage("struts-default") //用户指定Action所在的包要继承的父包 @Namespace("/") //用户指定action所属于的命名空间 @Scope("prototype") //设置prototype后,当我们从 Spring 容器中获取 base 时,每次返回的都是一个新的实例@ResultPath("/") //指定该Action到/目录下寻找物理视图资源@Results(//@Results:用于组织多个@Result。{ @Result(name = "success", location = "/ok.jsp"), @Result(name = "input", location = "/index.jsp") })//这里在Results定义主要是整个action的全局设置/* * Results、Result *//*@Result 相当于struts.xml文件中的<result>元素的内容。使用@Result必须指定一个name属性,相当于<result name=””/>另外,它还有几个可选的属性。type相当于<result type=””/>指定返回视图资源的类型 location 相当于<result>…..</result>中间部分,用于指定实际视图位置params:该属性相当于<result/>元素里多个<param../>子元素的作用,用于为该Result指定参数值。该属性应满足{“name1”,”value1”,”name2”,”value2”}格式*/ /*@results主要返回类型如下:@Results({ @Result(name="ajaxData",params= {"root","jsdata"},type="json"), @Result(name="result",params= {"root","result"},type="json"), @Result(name="indexView",location="/metadata/indexView.jsp",type="dispatcher"), @Result(name="getAtomTgtList", type="redirect",location="/iap/getAtomTgtList.action"), @Result(name="jsonData",params= {"root","jsdata_index"},type="json"), @Result(name="excel",params= {"contentType","application/vnd.ms-excel","inputName","excelStream","bufferSize","1024","contentDisposition","filename=export.xls"},type="stream") }) *//** * 验证注解 */@Validations( requiredStrings={ @RequiredStringValidator(fieldName="loginName",message="用户名不能为空!"), @RequiredStringValidator(fieldName="password",message="密码不能为空!") }, regexFields={@RegexFieldValidator(fieldName="telNum",expression="^(//+86|0|1)//d{10,11}$", message="电话号码格式不正确!")} ) /** * * ExceptionMapping:指定异常映射。(映射一个声明异常) * ExceptionMappings:一级声明异常的数组。 * exception: 用于指定异常类 * result:用于指定逻辑视图 * */@ExceptionMappings( { @ExceptionMapping(exception = "java.lange.RuntimeException", result = "error") }) /** * * 与拦截器配置的Annotation有@InterceptorRef、@InterceptorRefs和@DefaultInterceptorRef * @InterceptorRefs用于组织多个@InterceptorRef,因此它只需要指定一个value属性值, * 该value属性值为多个@InterceptorRef * @InterceptorRef用于为指定Action引用lanjieq或者是拦截器栈。 * 也就相当于strut.xml中位于<action../>元素内部的<interceptor-ref../>子元素的作用。 * 使用@InterceptorRefAnnotation时,必须制定一个value属性,用于指定所引用的拦截器或拦截器栈的名字。 * 相当于<interceptor-ref../>子元素里name属性的作用。 * */@Action(value = "file-manager", interceptorRefs = { @InterceptorRef(value = "fileUpload",params={"maximumSize","1024000","allowedTypes","image/pjpeg"}), @InterceptorRef(value = "basicStack")}, results = {@Result(name = ActionSupport.SUCCESS, location = "/view/file-manager-sucess.jsp"), @Result(name = ActionSupport.ERROR, location = "/view/file-manager-error.jsp") }, exceptionMappings = {@ExceptionMapping(exception = "java.lang.Exception", result = ActionSupport.ERROR)} ) public class TestStruts3Action extends BaseAction{@Autowired //注解Serviceprivate IEmpService empSerivce;private String loginName; private String password; @Action("login") //或者写成 @Action(value = "login") public String login() throws Exception { if ("yjd".equals(loginName) && "yjd".equals(password)) { return SUCCESS; } else { return ERROR; } } @Action(value = "add", results = { @Result(name = "success", location = "/index.jsp") })public String add() throws Exception { return SUCCESS; }}
- 注解—Action(@Controller)
- Action Controller
- @Controller注解
- @Controller注解
- Ruby On Rails--Action Controller(控制器)
- Spring注解(Repository、Service、Controller)
- Spring 注解(@Repository 、@Service 和 @Controller )
- action注解
- Asp.Net MVC学习总结(二)——控制器与动作(Controller And Action)
- Asp.Net MVC学习总结(二)——控制器与动作(Controller And Action)
- Asp.Net MVC学习总结(二)——控制器与动作(Controller And Action)
- (19)URL—其实我更想懂你:路由用户到特定的Controller和Action
- rails action controller
- YII controller action
- Action(controller) service DAO
- grails obtain controller action
- Java Spring MVC入门(七)——Controller等常用注解
- 基于注解的Controller
- Linux账户管理命令
- android中文件的权限标识符
- 利用MCGS做旋转动画的方法
- CSS3 @font-face 使用方法
- 引用类型作参数,排序
- 注解—Action(@Controller)
- 【人生感悟】
- android接触--遥控的配置
- Fedora 17安装Adobe Flash Player和Adobe Reader
- word 2010中设置默认粘贴为 只保留文本粘贴
- 汉诺塔程序
- DOS分区表项实例分析
- VS中Debug版本和Release版本的区别
- JAVAWEB项目如何实现验证码