`
wode66
  • 浏览: 743135 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

action向jsp页面传递数据的方法

    博客分类:
  • J2EE
阅读更多

action向jsp页面传递数据的几种方法:

 

前提:在struts的配置文件struts-config.xml中,设置该actionscope属性为“request”,即:

<struts-config>
	<form-beans>
		<form-bean name="loginForm" type="com.bjsxt.struts.LoginActionForm"/>
	</form-beans>
   
   	<action-mappings>
   		<action path="/login"
   				type="com.bjsxt.struts.LoginAction"
   				name="loginForm"
   				scope="request"
   		>
   			<forward name="success" path="/login_success.jsp"/>
			<forward name="error" path="/login_error.jsp"/>		
   		</action>
   	</action-mappings>
</struts-config>

    注意:所有struts-config.xml中的path属性都是以"/"开头的。

方法一:在action中利用request对象的setAttribute方法来传递数据

package com.bjsxt.struts;
/**
 * 用户登录的Action
 */
public class LoginAction extends Action {

	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		LoginActionForm laf = (LoginActionForm)form;
		String username = laf.getUsername();
		String password = laf.getPassword();
		String errorInfo = "";
		try {
			UserManager.getInstance().login(username, password);
			//request.setAttribute("username", username);
			return mapping.findForward("success");
		}catch(UserNotFoundException unfe) {
			unfe.printStackTrace();
			errorInfo = "用户不能找到,用户名称=[" + username + "]";
		}catch(PasswordErrorException pee) {
			pee.printStackTrace();
			errorInfo = "密码错误";
		}
		request.setAttribute("errorinfo", errorInfo);
		return mapping.findForward("error");
	}
}

 

 设置好后,就可以在login_success.jsp页面中,利用一下代码得到数据:

<%= request.getAttribute("username") %>

 

方法二:直接在request对象中获取ActionForm对象:

<%@ page import="com.bjsxt.struts.*" %>

<%
	LoginActionForm laf = (LoginActionForm)request.getAttribute("loginForm");
%>
               <%=laf.getUsername() %>,登录成功

 方法三:使用EL表达式:

 

 

分享到:
评论

相关推荐

    几种JSP页面传值方式.txt

    JSP页面之间的数据传递是实现前后端交互的关键环节之一。本文将详细介绍几种常见的JSP页面传值方式,并结合实际应用场景进行解释。 #### 1. 使用表单(Form)进行传值 通过`&lt;form&gt;`标签可以构建一个表单,用户填写...

    struts中数据在action与jsp中的传递总结.pdf

    Struts 中数据在 Action 与 JSP 中的传递总结 Struts 框架中,数据在 Action 与 JSP 之间的传递是一种常见的需求。为了实现这种传递,Struts 提供了多种方式,本文将对这些方式进行总结。 方式一:通过 FormBean ...

    jQuery+json异步实现JSP和struts2之间的数据传递

    在JSP页面中,我们可以使用jQuery的`$.ajax()`来发送请求: ```javascript $.ajax({ url: 'myAction', type: 'POST', dataType: 'json', success: function(response) { console.log(response); // 输出:{...

    jsp参数传递

    JSP页面间参数传递是JSP应用中的一个重要环节,它能够帮助开发者在不同页面之间共享数据或状态信息。本文将详细介绍几种常见的JSP页面间参数传递方法及其应用场景。 #### 二、直接在URL请求后添加参数 这种方法是...

    action 和jsp

    1. **使用Request对象**:Action通过设置`HttpServletRequest`对象中的属性来传递数据,然后在JSP页面中通过`&lt;%= %&gt;`或EL表达式`${ }`来获取这些属性值。这种方式简单易用,适用于小型项目。 ```java request....

    关于JSP页面间的传参问题

    #### JSP页面间传值方法概述 在进行Web开发时,尤其是在使用Java Server Pages(JSP)技术的过程中,页面间的参数传递是一项非常重要的技能。它不仅涉及到基本的HTML知识,还涉及到Java语言以及HTTP协议的理解。...

    struts2的方式返回json到jsp页面 List,Map,Object,对象各种操作都有....MyEclipse的,导入直接看效果。

    jsp通过Ajax无刷新获取Action返回的模拟数据,然后通过struts2转化成json数据返回页面....这里面Map,List,对象等等,一些常用的操作都有。主要的代码在Action和 json.js里面。适合新手入门

    使用代码自动生成jsp页面

    在Java Web开发中,通常我们会使用Action(或Controller)层来处理业务逻辑,并通过Model将数据传递到View(如JSP页面)进行展示。但有时我们可能需要在Action层直接生成一个静态HTML页面,以便于快速部署或者离线...

    JSP页面与JSP标记.ppt

    - **JSP指令**(`&lt;%@ ... %&gt;`):用于向JSP引擎传递元数据,如页面编码、导入包等。 - **JSP动作**(`&lt;jsp:action&gt;`):用于执行服务器端的某些操作,如包括其他文件、执行JavaBean等。 理解这些基本概念是构建动态...

    jpager分页标签(用于jsp页面中数据分页)

    `jpager` 是一个专为 JSP 页面设计的分页标签库,它简化了在 JSP 中实现数据分页的过程,提供了直观且易于使用的标签接口。 **1. 安装与引入** 要使用 `jpager`,首先需要将 `jpager.jar` 文件添加到项目的类路径...

    通过文件流读取本地图片显示在JSP页面方法

    ### 通过文件流读取本地图片显示在JSP页面的方法详解 #### 一、概述 在Web开发中,经常会遇到需要将本地存储的图片显示在前端界面的需求。本文将详细介绍如何利用Java中的文件流技术来实现这一功能。具体来说,...

    jsp页面之间的传值

    以下是一个通过Ajax向Servlet传递数据的例子: ```html &lt;form action="" method="post"&gt; 姓名: 密码: 学生登录" name="student"&gt; 老师登录" id="teacher"&gt; $("#teacher").click(function(){ var name = $...

    struts2中action如何获取jsp页面参数1.rar

    当我们需要从JSP页面传递参数到Action时,Struts2提供了多种方式来实现这一功能。本篇文章将深入探讨如何在Struts2中通过Action获取JSP页面的参数。 首先,我们需要理解Struts2的MVC架构,其中Model由Action类代表...

    多页面JSP传值

    Session和Request对象是Java Servlet API的一部分,可以在多个JSP页面之间持久存储数据。 - **Session**: ```java // 设置 session.setAttribute("name", "John"); // 获取 String username = (String) ...

    SSH项目后台JSP页面.zip

    在JSP页面中,虽然不直接与Spring交互,但Spring的模型对象(Model)会传递到视图层,供JSP展示。 3. **Hibernate**:是一个持久化框架,简化了Java对象与数据库之间的映射。它处理SQL查询和结果集转换,使得开发者...

    jsp的页面设置

    %&gt;`): 在这里声明变量和方法,它们在JSP页面被转换成Servlet时作为类成员。 - **表达式** (`&lt;%= %&gt;`): 直接输出Java表达式的值到页面上。 - **脚本片段** (`&lt;% %&gt;`): 这里可以写任何Java代码,但不会输出到页面。 ...

    Struts2页面数据流向及获取方法

    5. 根据返回的结果,Struts2框架将控制权交给相应的JSP页面,此时数据可以通过不同的方式传递到JSP页面进行展示。 在Struts2中,JSP页面可以获取数据的途径主要有以下两种: 1. **从上级Action获取数据**: - 当...

    编写jsp页面实现如下界面效果,然后交给servlet计算矩形的周长和面积,并输出结果。

    6. **JSP表达式与脚本元素**:在JSP页面中,使用表达式`&lt;%= %&gt;`显示数据,使用脚本元素`&lt;% %&gt;`执行Java代码。 以上就是利用JSP和Servlet实现计算矩形周长和面积的Web应用的详细步骤和涉及的技术点。通过这个简单的...

Global site tag (gtag.js) - Google Analytics