web.xm写法如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- <listener>
<display-name>struts2</display-name>
<listener-class></listener-class>
</listener>-->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
<param-name>actionPackages</param-name>
<param-value>com.fun.actions</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
包名最好3级目录:
package com.lele.action;
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.Namespace;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import com.opensymphony.xwork2.ActionSupport;
/**
*
* @author lele609
*
*/
@ParentPackage("struts-default")
// 父包
@Namespace("")
/*@Results( {
@Result(name = com.opensymphony.xwork2.Action.SUCCESS, location = "/msg.jsp"),
@Result(name = com.opensymphony.xwork2.Action.ERROR, location = "/erlogin.jsp") })*/
// @ExceptionMappings 一级声明异常的数组
// @ExceptionMapping 映射一个声明异常
@ExceptionMappings( {
@ExceptionMapping(exception = "java.lange.RuntimeException", result = "error") })
public class LoginAction extends ActionSupport {
private static final long serialVersionUID = -2554018432709689579L;
private String loginname;
private String pwd;
// @Action(value="login") 指定某个请求处理方法的请求URL。注意,它不能添加在Action类上,要添加到方法上。
@Action(value = "loginName",results={@Result(name="success",location="/msg.jsp"),@Result(name="error",location="/erlogin.jsp")})
public String login() throws Exception {
if ("HEFE".equalsIgnoreCase(loginname.trim())&&"123".equalsIgnoreCase(pwd.trim())) {
return SUCCESS;
}
else {
System.out.println("===========");
return ERROR;
}
}
@Action(value = "add", results = { @Result(name = "success", location = "/index.jsp") })
public String add() throws Exception {
return SUCCESS;
}
public String getLoginname() {
return loginname;
}
public void setLoginname(String loginname) {
this.loginname = loginname;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
就可以测试了
分享到:
相关推荐
struts2 使用Annotation配置实现的小例子,转载供大家学习使用,里面包括了所需的jar包
struts2-Annotation
博文链接:https://flym.iteye.com/blog/174358
struts2 annotation 注解的详细介绍及使用方法
参考博文:http://blog.csdn.net/u011638419/article/details/41743049
本文档对利用struts2 注解 annotation 实现文件下载作了简单介绍,并有代码为例,希望对学习struts2注解annotation的人有帮助,特别是需要动态传参方面。
用注解(annotation)方式配置struts2 (webwork) 中action的拦截器(interceptor)
马士兵视频里的struts2 hibernate3 spring2.5 annotation 整合 绝对好用 里面还有jar包 部署就可以用
NULL 博文链接:https://vincenta.iteye.com/blog/1535330
struts2,json-plugin, 并全注解零配置
Struts2的“零配置”特性由struts2-codebehind-plugin-2.1.2.jar插件支持,使用时记得将其拷入WEB-INF/lib下; 如果用的是Annotation的Struts2,就要将struts.xml去掉,否则即使将struts.xml中的内容注销,也会报错;
通过产生临时文件下载之后,再通过线程删除临时文件
Struts2 Spring Hibernate 框架整合 Annotation Maven project
Struts2 Spring Hibernate 框架整合 Annotation Maven project.zip
自己学Struts的注解,写的一个零配置小demo。 很简单很简单,只供新手学习。
Struts2+Spring2+Hibernate3+Annotation所需JAR包
struts annotation.ppt 欢迎下载