Hello world
Action
Result & Result type
Interceptor
Validation
Configuration files
Packages
tag
请求处理流程:
1.浏览器请求一个资源
2.Filter Dispatcher通过分析请求找到相应的处理Action
3.拦截器对请求自动应用通用的功能,如校验,文件上传处理
4.执行action中的相应方法
5.生成输出结果,返回结果给浏览器
修改struts.xml
<constant name="struts.ui.theme" value="simple
"></constant>
使得struts2的自动修饰标签的功能失效
修改web.xml,增加以下内容:
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<s:property value="message"/>
或
${message}
<body>
<s:form action=“login“ namespace="/demo" >
<s:textfield name="name" label="用户名"></s:textfield>
<s:textfield name="password" label="密码"></s:textfield>
<s:submit value="登录"></s:submit>
</s:form>
</body>
<body>
登录失败, <a href="<s:url value="/login.jsp"/>
">点击</a>重新登录
</body>
普通JSP的实现:
<html>
<head><title>Add Blog Entry</title></head>
<body>
<form action="save.action" method="post">
Title: <input type="text" name="title" /><br/>
Entry: <textarea rows="3" cols="25" name="entry"></textarea>
<br/>
<input type="submit" value="Add"/>
</form>
</body>
</html>
使用Struts Tag:
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head><title>Add Blog Entry</title></head>
<body>
<s:form action="save" method="post" >
<s:textfield label="Title" name="title" />
<s:textarea label="Entry" name="entry" rows="3" cols="25" />
<s:submit value="Add"/>
</s:form>
</body>
</html>
不同的访问入口可以通过method属性来指定
<action name="delete" class="example.CrudAction" method="delete">
一系列的action可能共享一个模式,我们不需要为每一个action单独进行配置,只需要通过通配符
配置一次。
<action name="*Crud" class="example.Crud" method="{1}">
我们可以指定一个默认的action
来处理不被其它action匹配的请求
<package name="Hello" extends="action-default">
<default-action-ref name="UnderConstruction">
<action name="UnderConstruction">
<result>/UnderConstruction.jsp</result>
</action>
struts中的action可以为普通的pojo
通过filter引入struts框架
缺省的扩展名为.action
分享到:
相关推荐
本篇文章将对Struts2的基础知识进行深入的探讨和总结。 一、Struts2框架概述 Struts2是Apache软件基金会的一个项目,它继承了Struts1的优点并解决了其存在的问题,提供了更强大的功能和更高的灵活性。Struts2的核心...
- **Struts2** 是一个开源的Web应用框架,继承了Struts1的优点,并且在此基础上进行了很多改进,使得它更加灵活和强大。Struts2采用MVC模式,将业务逻辑与视图分离,便于开发和维护。 #### 二、Struts2安装包详解 ...
通过本篇学习总结,我们深入了解了Spring和Struts这两个重要的Java Web开发框架。Spring框架以其强大的依赖注入和面向切面编程能力,在企业级应用开发中占据了重要的地位;而Struts框架则通过MVC架构模式,帮助...
本篇文章将深入探讨如何在IntelliJ IDEA开发环境中,利用Maven构建一个基本的Struts2项目。 首先,我们需要理解Maven,它是一个项目管理和综合工具,可以帮助我们管理项目的构建、依赖关系和配置。在IntelliJ IDEA...
Struts2是在Struts1的基础上发展起来的,它吸收了WebWork框架的优点,提供更强大的功能和更好的性能。 1.5 衡量一个框架的标准 包括易用性、可扩展性、性能、社区支持等。Struts2因其丰富的插件和强大的标签库,在...
总结来说,"Struts2省市县级联"是一个涉及前端交互、后端处理、数据库操作和框架配置等多个方面的问题,需要开发者具备扎实的Java Web开发基础和对Struts2框架的深入理解。通过实践和学习,你可以掌握这一实用功能的...
本篇将基于“Struts2-Portlet学习手册”这一资料深入探讨如何使用Struts2进行Portlet开发,并重点介绍Struts2-Portlet的核心概念、架构设计以及实践案例。 #### 二、Struts2-Portlet概述 **Struts2-Portlet**是...
在本篇博客中,我们将深入探讨Struts2的基础知识,包括其核心概念、配置、以及如何使用Struts2创建一个简单的Web应用。 **一、Struts2 概述** Struts2 是 Struts1 的升级版,它解决了 Struts1 中的一些局限性,提供...
总结,《Struts2 权威指南》是学习和掌握Struts2框架的重要资源,通过阅读电子书并结合提供的源码,开发者可以深入理解Struts2的核心概念、配置方式、工作原理以及如何进行实际应用开发。对于Java Web开发者来说,...
本篇将深入讲解Struts1的基本配置,帮助你理解和掌握这个框架的核心概念。 **1. 框架概述** Struts1是由Apache软件基金会开发的开源框架,它的主要目的是为了简化Java Servlet和JSP(JavaServer Pages)的开发,...
这篇指南将深入探讨Struts2如何实现国际化支持,并提供一个初步的引导。 首先,理解国际化的基本概念是至关重要的。国际化不仅仅是翻译文本,它还涉及到日期、时间、货币等格式的本地化。在Java中,这一过程通常...
本篇文章将深入探讨Struts2中的标签,特别是Ajax标签,并附带相关的源码分析。 一、Struts2基本标签库 Struts2的基础标签库包含了用于处理表单、显示数据和导航等任务的标签。例如: 1. `<s:textfield>`:用于创建...
总结起来,这篇博文会介绍如何在Struts2中集成JasperReport,通过编写Action类和配置Struts2的XML文件,实现动态报表的生成,并导出为PDF、Excel和HTML格式。这样的功能对于需要展示大量数据的应用场景非常有用,如...
总结来说,这篇笔记详细介绍了Struts2的基本概念、环境配置、核心配置文件以及开发工具的优化,为初学者提供了良好的学习起点。了解这些基础知识后,开发者可以进一步学习Struts2的MVC模式、Action、Result、...
总结,Struts作为早期的Java Web框架,对Web开发领域产生了深远影响,虽然现在有许多新的框架崛起,但理解并掌握Struts的基础知识,对于理解MVC模式和Web开发流程仍具有重要的学习价值。通过实践,你可以更好地理解...
根据提供的文件信息,我们可以深入探讨如何在Struts2框架中实现动态树型结构的数据获取与展示。...通过这些技术点的学习,开发者可以更好地理解和应用Struts2框架来开发具有复杂数据展示需求的应用程序。
在本篇“jQuery+json+struts2 开发备忘录(一)”中,我们将探讨如何使用这三种技术来构建高效且用户友好的Web应用程序。jQuery是一个强大的JavaScript库,它简化了DOM操作、事件处理、动画效果以及Ajax交互。JSON...