Action类:
import java.io.UnsupportedEncodingException;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
/**
* 获取Servlet API
* @author 够潮
*
*/
@SuppressWarnings("serial")
public class GetServletApiAction extends ActionSupport {
/**
* 用户登录
*/
public void loginAction(){
/**
* 获取Action上下文
*/
ActionContext ac = ActionContext.getContext();
/**
* 获取Appication
*/
Map map = ac.getApplication();
/**
* 获取Session
*/
Map sessionMap = ac.getSession();
/**
* 获取request
*/
HttpServletRequest request = ServletActionContext.getRequest();
/**
* 获取response
*/
HttpServletResponse response = ServletActionContext.getResponse();
/**
* 获取前台传过来的参数
*/
String userName = request.getParameter("userName");
String password = request.getParameter("password");
try {
/**
* 设置编码格式
*/
request.setCharacterEncoding("utf-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("userName"+userName);
System.out.println("password:"+password);
ActionContext ac2 = ServletActionContext.getActionContext(request);
System.out.println("ac2== ac --->"+(ac2==ac));
System.out.println("sessionMap == map--->"+(sessionMap == ac2.getSession()));
}
}
页面:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>在Action中获取Servlet Api 专题</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<center>
<h3>在Action中获取Servlet Api 专题</h3>
<form action="servletApiAction!loginAction.action">
userName:<input type="text" name="userName"><br>
password:<input type="password" name="password"><br>
<input type="submit" >
</form>
</center>
</body>
</html>
配置文件:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="admin" namespace="/" extends="struts-default">
<!-- ServletapiAction -->
<action name="servletApiAction" class="action.GetServletApiAction">
</action>
</package>
</struts>
测试:
- 大小: 46.7 KB
- 大小: 31.1 KB
分享到:
相关推荐
文件列表中的"struts2.0_zh.chm"很可能是这个教程的中文帮助文档,通常包含详细的框架介绍、配置示例、API参考等内容。通过阅读这份文档,读者可以深入理解Struts2.0的各个组件和使用方法,解决开发过程中遇到的问题...
这个压缩包包含了Struts2.0框架运行所需的所有jar包,使得开发者可以方便地在项目中集成并使用Struts2.0。 首先,我们来了解Struts2.0的核心组件和功能: 1. **Action类**:这是业务逻辑处理的入口点,继承自`...
在学习Struts2.0中文教程的过程中,应重点理解Action、拦截器、OGNL、配置文件的用法,以及如何利用Struts2提供的工具和特性来优化Web应用的开发。实践操作是掌握这些知识的关键,可以尝试创建简单的Struts2项目,...
- `servlet-api.jar`和`jsp-api.jar`:Servlet和JSP API,用于与Web服务器交互。 3. **工作原理**: - 用户发送请求到Servlet容器,请求会被Struts 2的Filter(通常名为`StrutsPrepareAndExecuteFilter`)拦截。 ...
Struts2.0和DWR(Direct Web Remoting)是两个在Web开发中常见的开源框架。Struts2.0作为MVC(Model-View-Controller)框架,主要用于构建企业级的Java Web应用,而DWR则是一种使得JavaScript可以与服务器端Java对象...
Struts2.0和Spring是两个非常著名的Java Web框架,它们在企业级应用开发中有着广泛的应用。Struts2提供了一种模型-视图-控制器(MVC)架构,用于组织和管理应用程序的业务逻辑,而Spring则是一个全面的后端解决方案...
AnyFo - Util - ... AnyFoAction中的那个类,提供多个方法来访问Servlet中的API,这些方法能提供的功能大致如下: 1.获得HttpServletResponse 2.获得HttpSession 3.获得ServletContext,即俗称的Application
通过深入阅读并实践“struts2.0中文帮助手册”,开发者不仅可以掌握Struts2的基础知识,还能学会如何在实际项目中灵活运用,提升开发效率和代码质量。无论你是初学者还是经验丰富的开发者,这个手册都是你不可或缺的...
Struts2.0依赖于其他一些库,如OGNL(Object-Graph Navigation Language)用于表达式语言,FreeMarker或Velocity用于视图模板,还有Commons-logging、Servlet API等。这些库在struts-2.0.6包中可能已经包含了它们的...
《Struts2.0中文帮助手册.chm》将详细介绍Struts2的API、配置和使用技巧,而《Struts1.2.pdf》则可能包含了Struts1.x的框架原理、开发流程以及案例分析。通过学习这两本书,开发者可以深入理解这两个版本的Struts...
在Struts2.0中,类库的选择和配置是实现高效、稳定开发的关键部分。下面将详细介绍Struts2.0框架中的核心类库及其作用。 1. **Struts2 Core**: - `struts2-core.jar`:这是Struts2的核心库,包含了Action、Result...
1. **拦截器(Interceptors)**:Struts 2.0引入了拦截器的概念,它们类似于AOP(面向切面编程)中的切面,可以插入到动作调用流程中,实现如日志、事务管理、权限检查等功能。 2. **强大的配置方式**:Struts 2.0...
12. **其他依赖库**:如servlet-api.jar、commons-lang3.jar、log4j.jar等,这些是Struts2运行所需的第三方库或Java EE标准API。 使用Struts2.0.11.1开发Web应用时,开发者需要理解Action、Interceptor、Result、...
Struts2.0是Java Web开发中的一个强大且流行的MVC(Model-View-Controller)框架,由Apache软件基金会维护。作为Struts1的升级版,Struts2并没有直接继承Struts1的设计,而是基于WebWork框架进行了深度改造,因此在...
在实际项目中,将这些jar包添加到项目的类路径中,就可以开始使用Struts2.0开发Web应用了。需要注意的是,版本选择应与项目其他依赖库兼容,避免出现版本冲突问题。同时,理解和掌握Struts2的配置、生命周期、拦截器...
这个"struts2.0帮助文档"是开发者们宝贵的资源,提供了全面的API参考、指南和最佳实践。以下是关于Struts2.0的一些核心知识点: 1. **MVC架构**:Struts2作为MVC框架,将业务逻辑(Model)、视图(View)和控制器...
Struts2.0是ActionServlet的一个升级版,它是一个强大的、可扩展的MVC框架,提供了强大的表单处理和页面导航功能。Struts2的核心是Action类,它负责接收请求、处理业务逻辑,并通过Result返回相应的视图。Struts2的...
Struts 2.0是Java Web开发中的一个关键框架,它是经典的MVC(Model-View-Controller)设计模式的实现,极大地简化了构建基于JSP和Servlet的应用程序。该框架的核心在于提供了一种用于处理HTTP请求和响应的强大机制,...
6. **依赖的Servlet容器库**:Struts2依赖于Servlet API,如`servlet-api.jar`,以及`jsp-api.jar`,这些都是在Web应用服务器上运行必需的。 7. **其他依赖库**:例如,`xwork-core.jar`是Struts2的前身XWork的核心...