`
pwpw1218
  • 浏览: 9473 次
社区版块
存档分类
最新评论

Struts2学习笔记之入门案例HelloWorld(三)

阅读更多

Struts2学习笔记之入门案例HelloWorld(三)

  前面我们把Struts的准备工作已经做好了,下面我们就直接编写组件,配置组件就可以了

 

 Struts2组件之Action

package com.mscncn.struts.ch01.web;

public class HelloWorldAction {
	/**
	 * Action 的业务方法用于处理请求中的业务
	 * 1. 必须是public
	 * 2. 返回值为String
	 * 3. 参数列表为空
	 */
	public String execute(){
		//业务逻辑处理 ......
		/**
		 * 返回的字符串用于匹配一个result标签
		 * 然后请求转发给result标签中定义的页面
		 */
		return "ok";
	}
}

 

 

配置Action组件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
    "http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
	<!-- 
		配置需要体现2点内容
		1. 请求对应哪个Action类及其方法
		2. 请求转发到哪个页面
	 -->
	<package name="ch01" namespace="/hello" extends="struts-default">
		<!-- 请求的url与 两个配置参数相关
			1. package 的namespace的参数
			2. action 的name
			以此为例 http://localhost:8080/struts-ch01/hello/sayHello
			package的namespace 是项目后面的路径
			
		 -->
		<action name="sayHello" 
			class="com.mscncn.struts.ch01.web.HelloWorldAction"
			method="execute">
				<result name="ok">
					/hello.jsp
				</result>
		</action>
	</package>
</struts>

 

测试:

   a. 在浏览器地址栏中输入: http://localhost:8080/struts-ch01/hello/sayHello

 b. 主要流程分析,我们输入的网址是:http://localhost:8080/struts-ch01/hello/sayHello

 首先http://localhost:8080/struts-ch01/ 这部分是项目名,不需要说太多,

 /hello/sayHello  这部分是实际的请求地址,下面我们就详细的分析下struts2的运行流程

1. request请求来了(http://localhost:8080/struts-ch01/hello/sayHello)

2. -->filter(struts2)

3. -->解析url(/struts-ch01/hello/sayHello)

4. -->/hello 这一部分是struts2配置文件中的package 的namespace的值

5. -->找到package 那么sayHello 是该package下action的name属性值

6. -->找到了action,可以得到该action的class,method,那么就可以执行类的方法

7. -->类方法的返回值与action中result的name对应,result便签中得值是响应的view

8. -->把类方法中的数据绑定到response中,然后转发给result对应的view

9. -->显示视图

 

 

分享到:
评论

相关推荐

    struts2从入门到精通总结(备忘)

    入门案例通常包括创建一个简单的“Hello, World!”应用,通过配置Struts2的核心文件struts.xml来定义Action,然后在JSP页面上展示结果。 二、Struts2配置 配置是Struts2的基础,主要包括以下部分: 1. `struts-...

    struts学习笔记

    ### Struts2框架详解 #### 一、Struts2框架介绍 Struts2是一个基于MVC模式的开源Java Web框架,它提供了丰富的功能用于构建Web应用程序。与Struts1相比,Struts2的设计思想和架构有着根本的不同。Struts2的核心是...

    传智播客struts2框架2016版视频教程笔记

    ### 传智播客Struts2框架2016版视频教程笔记 #### 概述 Struts2是一个用于构建企业级Java Web应用程序的开源框架。它基于MVC设计模式,能够帮助开发者更加高效地组织代码结构,并提供了一系列实用的功能,如拦截器...

    马士兵hibernate学习笔记(原版)

    ### 马士兵Hibernate学习笔记知识点总结 #### 一、课程内容概览 - **HelloWorld**:通过简单的示例程序介绍如何启动一个基于Hibernate的Java项目。 - **Hibernate原理模拟**:解释O/R Mapping的概念及其重要性。 -...

Global site tag (gtag.js) - Google Analytics