`

struts2学习笔记二--准备struts2的学习和开发环境

阅读更多

准备struts2的学习和开发环境
1 导包
2 参照开发包自带的例子在web.xml文件中配置
3 参照开发包自带的例子编写Action类和配置struts.xml文件
<struts>
<package name="demo" namespace="/hello/word">
<action name="test" class="cn.yue.struts2Demo.web.action.TestAction" method="sayHello">
</action>
</package>
</struts>


public class TestAction {
public String sayHello()
{
try {
ServletActionContext.getResponse().getWriter().println("hello word!");
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}


定位包 只要一旦追溯到了一个最匹配的上层包名,不管这个包中是否存在要访问的Action,都不会再追溯更上层的包名了。
定位action 一旦定位到了某个包下,接着就会在这个包中查找action。由于struts会追溯上层包的特点,所以,用某个包的名称空间的子目录形式也可以访问到该包中的Action,前提是该子目录不存在对应的名称空间。
namespace属性可以设置为空字符串””,即为默认名称空间,如果struts2定位到的包名中不存在当前要访问的Action ,struts2接着还会在默认名称空间寻找该Action,只有在默认名称空间的包名中还没找到该action时,才报错action找不到的错误。


配置结果视图与视图工作原理
1 局部视图:在<action>元素中配置<result>元素
<action name="test" class="cn.yue.struts2Demo.web.action.TestAction" method="sayHello">
<result name="success">
<param name="location">/WEB-INF/pages/view.jsp</param>
</result>
</action>
2 全局视图:在<global-results>元素中配置<result>元素
<global-results>
<result type="plainText">
<param name="location">/WEB-INF/pages/view.jsp</param>
</result>
</global-results>
3 自定义一个视图类型

public class WelcomeResult implements Result {
private static final long serialVersionUID = -6454914993165364620L;
private String group="yue";
public void setGroup(String group) {
this.group = group;
}
public void execute(ActionInvocation invocation) throws Exception {
ServletActionContext.getResponse().reset();
ServletActionContext.getResponse().getWriter().println(group+",welcome to you!");
}
}
<action name="test3" class="cn.yue.struts2Demo.web.action.TestAction" method="sayHello">
<result name="success" type="welcome">
<param name="group">zhenhua</param>
</result>
</action>


<!-- 自定义视图 -->
<result-types>
<result-type name="welcome" class="cn.yue.struts2Demo.web.result.WelcomeResult"></result-type>
</result-types>


常量配置
struts-default.xml
struts-plugin.xml
struts.xml
struts.properties
web.xml


<constant name=“struts.action.extension” value=“do,go”/>

重加载xml文件
tomcat 设置context添加<Context reloadable="true">
struts.configuration.xml.reload,

default.properties文件中 struts.devMode 设为true 在struts.xml中配置 <constant name="struts.devMode" value="true"></constant>

 

Struts.xml中的默认值与更多配置细节
1 在根元素<struts>下可以使用include子元素引入其他的配置文件
2 <action>元素的method属性可以不设置,默认为execute;class属性可以不设置,默认为ActionSupport。
3 <result>元素的type属性和name属性都可以不设置,默认值分别为dispatcher和success
4 在<package>元素下配置<default-action-ref>子元素,用于说明在该包下不存在的action路径映射,都可以统交给一个默认的<action>元素去处理。
5 在<package>元素下的<default-class-ref>子元素,用于配置该包下的<action>元素的class属性的默认值,前面说的默认值为ActionSupport正是通过这个元素配置的。
6 使用Config Browser Plugin浏览已经装载的配置信息和列出各个包名称空间下的所有Action的访问链接。

分享到:
评论

相关推荐

    struts2 学习重点笔记

    ### Struts2 学习重点知识点总结 #### 一、Struts2 概念与架构 **1.1 Struts2 简介** - **定义**:Struts2 是 Apache 组织提供的一个基于 MVC 架构模式的开源 Web 应用框架。 - **核心**:Struts2 的核心其实是 ...

    struts2学习笔记1-HelloWorld项目

    本篇学习笔记将引导我们从零开始,通过一个简单的"HelloWorld"项目,了解Struts2的基础知识。 首先,我们需要在本地环境中搭建Struts2的开发环境。这包括安装JDK、配置Java环境变量、下载Apache Struts2的最新版本...

    struts2学习笔记.doc

    ### Struts2学习笔记知识点概览 #### 一、环境搭建 **1.1 Struts2简介** - **Struts2概述**:Struts2是一个开源的MVC框架,它结合了Struts 1.x、WebWork和其他一些框架的优点。Struts2的主要目标是简化Web应用程序...

    struts2综合笔记

    #### 三、搭建 Struts2 开发环境 1. **拷贝 jar 包**: - 必要的 Jar 包包括: - `struts2-core-2.3.1.1.jar`: Struts2 核心库。 - `xwork-core-2.3.1.1.jar`: WebWork 核心库,Struts2 基于此构建。 - `ognl-...

    struts2学习笔记

    以上就是Struts2学习笔记中涵盖的主要知识点,这些内容涵盖了从基础到进阶的应用,对于理解和掌握Struts2框架至关重要。尽管对于初学者来说可能有些复杂,但随着深入学习,你会发现Struts2的强大和实用性。

    Struts2学习笔记

    ### Struts2学习笔记知识点梳理 #### 一、Struts2框架概述 - **背景**:Struts2作为Struts1的升级版本,融合了WebWork框架的优点,由Apache基金会维护,是一个开源、免费的MVC框架。尽管随着时间的推移,Spring MVC...

    传智播客struts2全程学习笔记

    ### 传智播客Struts2全程学习笔记 #### Struts2的优点 1. **无侵入式设计**:与Struts1相比,Struts2的设计更为先进,它不依赖于Servlet API或Struts API,这使得Struts2更加灵活且易于集成到其他环境中。在代码...

    Groovy学习笔记 Struts2集成--Groovy类作为Action

    通过阅读文章《Groovy学习笔记 Struts2集成--Groovy类作为Action》,你可以更深入地了解如何在实际项目中利用Groovy的特性来优化Struts2应用。提供的压缩包文件`struts2-groovy-plugin`可能包含了Struts2 Groovy插件...

    struts2课程笔记

    Struts2 是一款流行的Java开源框架,用于构建企业级Web应用程序。它主要解决了传统Servlet API在处理请求转发和业务逻辑分离...学习并掌握Struts2,对于理解和实践SSH(Struts2、Spring、Hibernate)开源框架至关重要。

    Struts2学习笔记与心得

    ### Struts2与Struts1对比及特性解析 #### 一、Struts2与Struts1的区别 在探讨Struts2的学习心得之前,我们先来...通过以上的学习心得分享,希望能够帮助初学者更好地理解和掌握Struts2框架的基本概念和使用方法。

    Struts2 学习笔记

    二、 搭建Struts2的运行环境: 5 三、 Namespace 6 四、 标签 6 五、 Action 6 六、 路径问题的说明 8 七、 Action的动态调用方法 8 八、 Action通配符(wildcard)的配置 9 九、 Action的属性接收参数 10 1、 在...

    Struts2学习笔记(一) 环境的搭建与HelloWorld程序

    在本篇学习笔记中,我们将聚焦于环境搭建和创建第一个"Hello, World!"程序。 首先,要开始学习Struts2,你需要确保你的开发环境中已经安装了以下基本组件: 1. **Java Development Kit (JDK)**:Struts2依赖于Java...

    Struts2.1学习笔记

    ### Struts2.1学习笔记 #### Struts2的来源与优点 - **来源**:Struts2是在WebWork2的基础上发展起来的,它继承了WebWork2的优点,并且进行了改进,使其更适合现代Web应用程序的需求。与Struts1相比,Struts2的...

    【张冰Struts2学习笔记】0102_第一个Struts2实例

    - 安装JDK:确保你的开发环境已经安装了Java运行环境,因为Struts2基于Java。 - 引入依赖:在项目中添加Struts2的库,通常通过Maven或Gradle管理依赖。例如,在Maven的pom.xml文件中添加以下依赖: ```xml ...

    Struts2超详细学习笔记分享(献给自学新人)

    本篇超详细学习笔记将带你逐步深入理解Struts2的核心概念和运作机制。 首先,让我们了解Struts2的基本特性。Struts2是一个基于Servlet的框架,它通过将JSP作为视图(View),Servlet作为控制器(Controller),并将...

Global site tag (gtag.js) - Google Analytics