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的核心...
本篇文章将深入探讨如何在IntelliJ IDEA开发环境中,利用Maven构建一个基本的Struts2项目。 首先,我们需要理解Maven,它是一个项目管理和综合工具,可以帮助我们管理项目的构建、依赖关系和配置。在IntelliJ IDEA...
总结来说,"Struts2省市县级联"是一个涉及前端交互、后端处理、数据库操作和框架配置等多个方面的问题,需要开发者具备扎实的Java Web开发基础和对Struts2框架的深入理解。通过实践和学习,你可以掌握这一实用功能的...
在本篇博客中,我们将深入探讨Struts2的基础知识,包括其核心概念、配置、以及如何使用Struts2创建一个简单的Web应用。 **一、Struts2 概述** Struts2 是 Struts1 的升级版,它解决了 Struts1 中的一些局限性,提供...
总结,《Struts2 权威指南》是学习和掌握Struts2框架的重要资源,通过阅读电子书并结合提供的源码,开发者可以深入理解Struts2的核心概念、配置方式、工作原理以及如何进行实际应用开发。对于Java Web开发者来说,...
本篇将深入讲解Struts1的基本配置,帮助你理解和掌握这个框架的核心概念。 **1. 框架概述** Struts1是由Apache软件基金会开发的开源框架,它的主要目的是为了简化Java Servlet和JSP(JavaServer Pages)的开发,...
这篇指南将深入探讨Struts2如何实现国际化支持,并提供一个初步的引导。 首先,理解国际化的基本概念是至关重要的。国际化不仅仅是翻译文本,它还涉及到日期、时间、货币等格式的本地化。在Java中,这一过程通常...
1. Struts2 的概念和优点:Struts2 是在 WebWork2 基础发展而来的,具有无侵入式设计、提供拦截器、类型转换器、多种表现层技术和输入校验等优点。 2. Struts2 的架构设计:Struts2 框架的核心类库是 struts2-core-...
本篇文章将深入探讨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开发流程仍具有重要的学习价值。通过实践,你可以更好地理解...
在本篇“jQuery+json+struts2 开发备忘录(一)”中,我们将探讨如何使用这三种技术来构建高效且用户友好的Web应用程序。jQuery是一个强大的JavaScript库,它简化了DOM操作、事件处理、动画效果以及Ajax交互。JSON...
本篇文章将深入探讨Struts2的基础知识,包括其核心概念、配置、标签库以及API的使用。 一、Struts2的核心概念 1.1 框架架构:Struts2基于拦截器(Interceptor)模型,通过一系列拦截器来处理请求,实现了业务逻辑与...
Struts1是一个经典的Java Web开发框架,由Apache软件基金会维护,它主要负责处理MVC(Model-View-Controller)架构中的...通过学习Struts1,开发者可以更好地掌握Web应用程序的结构,为后续的学习和开发打下坚实基础。
总结来说,Struts 1.3.8 学习笔记涵盖的内容广泛,包括框架的组件使用、配置、源码解读以及工具应用。通过这样的学习,开发者能够熟练掌握 Struts 的核心功能,为构建高效、可维护的 Web 应用奠定基础。
本篇文章将带你初识Struts2,并通过实际操作来体验其工作原理和基本用法。提供的压缩包文件"teststruts2"可能包含了示例代码或配置文件,用于辅助学习。 首先,我们了解Struts2的核心概念: 1. **Action类**:在...
这篇博客"Struts开发小结"可能涵盖了作者在使用Struts框架进行开发过程中的经验总结和一些关键点。由于没有直接的描述内容,我们将基于Struts框架的一般特性来讨论相关知识点。 1. **Struts 2框架基础**: Struts ...
1. **Struts框架基础**:首先,论文可能会介绍Struts的基本架构,包括Action、ActionForm、ActionServlet、配置文件(struts-config.xml)等核心组件的作用和交互方式。 2. **MVC设计模式**:解释MVC模式如何将业务...
总结来说,这篇教程将涵盖如何使用Maven来组织和构建一个基于Struts2、Spring和iBatis的Web应用,涉及到的关键步骤包括设置项目结构、配置框架、编写Action、实现业务逻辑、配置数据库连接和SQL映射,以及测试整个...