Struts2基于注解方式配置文件
项目目录架构展示:
项目:
1:struts.xml文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<!-- 声明基于struts2注解方式的配置中struts.xml文件必须要有
如果是自己配置的struts2框架要引入struts2-convention-plugin.jar包
如果是开发工具(myeclipse)开发的应该自带了struts2-convention-plugin.jar这个包
本人水平有限,如有不当之处还望谅解 !!!!!!!!!!!!!!!
-->
<!-- 请求参数编码方式 -->
<constant name="struts.i18n.encoding" value="UTF-8"/>
<!-- 指定被struts2处理的请求后缀名,多高可以用逗号隔开 -->
<constant name="struts.action.extension" value="action,do,liu,chao"/>
</struts>
2:Action
package liu.chao.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;
@ParentPackage("struts-default") //指定继承的父包
@Namespace("/liuchao") //指定命名空间
//指定一组结果集,返回不同的字符串跳转到不同的页面
@Results({@Result(name="success",location="/success.jsp"),@Result(name="error",location="/error.jsp")})
//声明异常的数组,指定异常不同的结果执行不同的result
@ExceptionMappings({@ExceptionMapping(exception="java.lang.RuntimeException",result="error")})
public class LiuAction extends ActionSupport{
/**
* @author 007liuchao007
*/
private static final long serialVersionUID = 1710373000294860200L;
private String userName;//用户名
private String userPass;//密码
//setter及getter
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserPass() {
return userPass;
}
public void setUserPass(String userPass) {
this.userPass = userPass;
}
@Action(value="login")//@Action("login"),指定请求所执行的方法
public String login(){
if(this.userName.equals("liuchao")&&this.userPass.equals("1234"))
return SUCCESS;
else return ERROR;
}
}
前台:index.jsp
<body>
<form name="007" action="liuchao/login.action" method="post">
userName: <input type="text" name="userName"/><br>
userPass: <input type="password" name="userPass"/>
<input type="submit" value="submit">
</form>
</body>
success.jsp
<body>
<h1>恭喜你登陆成功了!</h1>
</body>
error.jsp
<body>
<h2>不好意思请输入正确的用户名和密码</h2>
</body>
- 大小: 7.6 KB
分享到:
相关推荐
然而,随着Java注解的广泛应用,Struts 2也引入了注解配置的方式来简化开发过程,避免了XML配置的繁琐。 在"Struts 2使用注解配置Action"中,我们不再需要在struts.xml中为每个Action类手动添加配置。相反,我们...
在Struts2中,Annotation注解的引入为开发者提供了更加灵活和便捷的配置方式,使得无需在XML配置文件中进行繁琐的设置,可以直接在类或方法上通过注解来进行配置。本文将深入探讨Struts2中的Annotation配置,以及...
本文将详细介绍如何使用Struts2框架结合注解(Annotation)的方式实现文件下载功能。 #### 一、Struts2框架简介 Struts2是一个基于MVC架构的Java Web应用框架,它继承了Struts1的优点,并在此基础上进行了改进。...
在Struts2中,基于注解的配置方式简化了Action类的编写,使得代码更加简洁、可读性更强。本文将详细讲解如何使用Struts2的注解实现文档的上传与下载功能。 首先,我们来看文档上传的实现。在Struts2中,可以使用`@...
在传统的Struts2配置中,我们需要在struts.xml文件中定义Action类及其对应的Action方法,以及它们与视图的映射关系。然而,通过注解,我们可以把这些配置直接写在Action类和方法上,实现“零配置”。 1. **Action...
在Struts2框架中,注解开发是一种简化配置的方式,它允许开发者在类或方法级别直接标注,以定义动作、结果、参数等信息,从而减少XML配置文件的使用。本知识点将详细介绍Struts2中的注解开发及其核心组件。 标题...
在这个基于注解的Struts2简单工程中,我们将深入探讨如何使用注解来配置和控制应用程序的行为,而不是传统的XML配置文件。 在传统的Struts2配置中,我们通常会在`struts.xml`文件中定义Action类、结果类型和结果...
在Struts2中,注解(Annotation)是开发者常用的一种元数据表示方式,它允许我们在代码中直接标注信息,简化配置文件。"struts2注解必须包"指的是Struts2提供的一系列注解,它们对于简化Struts2应用的配置和增强其...
Struts2支持多种方式来配置,包括XML配置和注解配置。 3. 全注解:全注解配置意味着我们不再需要编写大量的XML配置文件,而是直接在类和方法上使用注解来定义行为和映射。这种方式使得代码更易读,减少了出错的可能...
### Struts2注解配置全面解析 #### 一、引言 随着Struts2框架的不断更新和发展,很多开发者在尝试使用注解方式进行配置时往往会遇到不少难题。尤其是在使用Struts2.1及以上版本时,由于大部分教程和资料仍然基于...
整合SSH涉及到的主要配置文件有`struts2-spring-plugin.xml`、`spring-context.xml`以及Hibernate的相关配置文件(如`hibernate.cfg.xml`)。`struts2-spring-plugin.xml`配置Struts2与Spring的集成,确保Action类由...
通过以上讲解,我们可以看到这个项目涵盖了Maven的依赖管理,Struts2的Action和注解配置,以及Struts2对JSON的支持。这为我们提供了一个完整的示例,展示了如何在现代Java Web开发中使用这些技术。
这种约定使得无需在配置文件中显式声明每个Action的位置。 ##### 2.2 结果路径的命名习惯 Struts2 Convention Plugin还支持根据类名和包名的命名习惯来指定结果路径。例如,如果Action类名为`ProductsAction`,则...
Struts2是一个强大的MVC...理解并掌握以上知识点,你就能构建起一个基于Struts2的文件上传下载系统。实际应用中,还需要考虑安全性问题,如防止文件覆盖、大小限制、非法文件类型上传等,确保系统的稳定性和安全性。
Struts2的配置文件(struts.xml)定义Action和结果,Hibernate的配置文件(hibernate.cfg.xml)设置数据库连接,Spring的配置文件(applicationContext.xml)管理bean。这些配置文件需要正确地互相引用,以确保框架...
而使用注解配置的Hibernate,可能会借助于第三方库,如Hibernate-JPA2的`@Query`注解配合`Pageable`接口来实现分页。 总的来说,这个SSH2+Annotations实例展示了如何在Java Web开发中有效地利用注解来提高开发效率...
【基于注解的Spring+Struts2+Mybatis】是一个常见的Java Web开发框架组合,用于构建高效、可维护性高的应用程序。在这个项目中,Spring作为整体的容器管理依赖注入(DI),Struts2负责处理HTTP请求和视图展示,而...
在XML配置中,Struts 2的配置文件(struts.xml)定义了Action类与URL的映射,以及Action执行后的结果页面。当用户通过URL访问应用时,Struts 2拦截请求,根据配置文件找到对应的Action执行。 **Hibernate框架** 是...
Struts2支持基于XML的配置和注解方式定义Action。 - **Spring3**:提供了强大的DI和AOP功能,用于管理bean和控制事务。Spring3也支持注解驱动的配置,使得无需XML即可配置bean。 2. **整合步骤** - 首先,需要在...
在Struts2中,注解如`@Action`和`@Result`可以用来定义动作和结果,无需传统的XML配置文件。`@AnnotationsAware`拦截器允许Struts2识别并处理注解,增强了其灵活性。 Mybatis是轻量级的持久层框架,专注于SQL映射,...