在jsp学习中,经常需要在一个jsp页面中调用另一个jsp页面中的变量,下面就这几天的学习,总结一下。

jsp页面之间的变量调用有多种方法:

1、通过jsp的内置对象—request对象获取参数:

(1)通过超链接传参:

例:把a.jsp中i的值传到b.jsp中:

在a.jsp页面中的核心代码为:

<a href="b.jsp?i=1">传参</a>     (说明:给i赋值时也可以用jsp表达式,例如i=<%变量名 %>)

在b.jsp页面中的核心代码为:

<%String j=request.getParameter("i"); %>

<%=j %>

(2)通过表单传参:

例:把a.jsp中表单中的name的值传送到b.jsp中:

在a.jsp页面中的核心代码为:

<form action="b.jsp" method="post">

<ul>

<li><input type="text" name="username">

<li>w<input type="submit" name="submit" value="提交">

<ul>

</form>

在b.jsp页面中的核心代码为;

<%String getUserName=request.getParameter("username");>

<%=getUserName %>

(3)通过表单的隐藏域传参:

例:把a.jsp中定义的变量传送到b.jsp中;

在a.jsp中的核心代码为:

<%!int a=4; %>
                             <form action="b.jsp" method="post">
                                   <input type="hide" name="b" value=<%a%>>

<input type="submit" value="提交">

</form>

在b.jsp中的核心代码为:

<%int c=(Integer)request.getAttribute("b"); %>

(上段代码或者为<%String c=request.getAttribute("c").toString(); %>等等,类型转换通java一样)
                             <%=c %>

运行结果:变量a=4的值通过表单隐藏域b传到b.jsp中的c中。

2、通过JavaBean获取表单信息:

例:用JavaBean获取用户登录表单信息:

Login.jsp中的核心代码为:

<form action="Deal.jsp" method="post">

<ul>

<li>用户名:<input type="text" name="username">

<li>密码:<input type="password" name="password">

<li><input type="submit" name="submit" value="登录">

</ul>

</form>

JavaBean中的核心代码为:

package com;

public class UserBean{

private String username;

private String password;

public String getUserName(){

return username;

}

public void setUserName(String username){

this.username=username;

}

public String getPassword(){

return password;

}

public void setPassword(String password){

this.password=password;

}

}

Deal.jsp中的核心代码为:

<jsp:useBean id="user" class="com.UserBean" >

<jsp:setProperty name="user" property="*">

<%String username=user.getUserName();%>

<%String password=user.getPassword();%>

得到的用户名为:<%=username%><br>

得到的密码为:<%=password%>

其中,Deal.jsp中的<jsp:setProperty name="user" property="*">中的星号是表示对所有同名的属性赋值,当然还可以对属性选择性地赋值: <jsp:setProperty name="user" property="username">、<jsp:setProperty name="user" property="password">等。

当然肯定还有更好更多的方法,期待高手赐教。

在JSP页面中调用另一个JSP页面中的变量的更多相关文章

  1. 在一个py脚本中调用另外一个py脚本中的类或函数

    1.两个文件在同一目录,直接import即可 2.两个文件在不同目录 在导入文件的时候,Python只搜索当前脚本所在的目录,加载(entry-point)入口脚本运行目录和sys.path中包含的路 ...

  2. JSP页面中引入另一个JSP页面

    一个JSP页面中引入另一个JSP页面,相当于把另一个JSP页面的内容复制到对应位置: <%@include file="date.jsp" %> 一般页面的top和bo ...

  3. 在一个jsp页面中引用另一个jsp文件的路径的问题

    为了提高代码的重用性,经常需要在一个jsp页面中引用另一个jsp文件的代码.关于引用时的路径的问题.下面只介绍动态引用的,我觉得静态引用的应该也一样. 相对路径: 一.在同一个文件夹下,a.jsp中引 ...

  4. 在一个apk中调用另外一个apk中的activity

    今天忽然想到如果要在一个activity中调用另外一个activity该怎么办呢? 感觉这个应该比较简单,应为activity的启动方式就两种:显式启动.隐式启动: 显式启动的话肯定不行,那就只能使用 ...

  5. (转载)oracle 在一个存储过程中调用另一个返回游标的存储过程

    原文链接:http://www.jb51.net/article/20160.htm 实际项目当中经常需要在一个存储过程中调用另一个存储过程返回的游标,本文列举了两种情况讲述具体的操作方法. 第一种情 ...

  6. bug日记之---------js中调用另一个js中的有ajax的方法, 返回值为undefind

    今天做一个OCR授权的需求, 需要开发一个OCR弹框, 让用户选择是否授权给第三方识别公司(旷世科技)保存和识别用户个人信息, 照片等. 其中用到了在一个js的方法中调用另外一个js的方法, 其中有一 ...

  7. 如何调用另一个python文件中的代码

    模块的搜索路径 模块的搜索路径都放在了sys.path列表中,如果缺省的sys.path中没有含有自己的模块或包的路径,可以动态的加入(sys.path.apend)即可.下面是sys.path在Wi ...

  8. [原创]C/C++语言中,如何在main.c或main.cpp中调用另一个.c文件

    C/C++语言中,如何在main.cpp中调用另一个.c文件主要有5种思路: 1.在VS2012 IDE中,将被引用的.c文件后缀名全部修改为.h,然后通过IDE的解决方案资源管理器中鼠标右键单击“头 ...

  9. Js文件函数中调用另一个Js文件函数的方法

    在项目中Js文件需要完成某一功能,但这一功能的大部分代码在另外一个Js文件已经完成,只需要调用这个文件实现功能.那么如何调用:一个Js文件函数中调用另一个Js文件函数的方法? (直接代码说明) 示例d ...

随机推荐

  1. ARM GCC 内嵌汇编手册

    转自:http://blogold.chinaunix.net/u2/69404/showart_1922655.html ARM GCC 内嵌(inline)汇编手册 关于这篇文档这篇文章是本人为方 ...

  2. bzoj 3784: 树上的路径 堆维护第k大

    3784: 树上的路径 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 88  Solved: 27[Submit][Status][Discuss] ...

  3. BZOJ 1571: [Usaco2009 Open]滑雪课Ski

    Description Farmer John 想要带着 Bessie 一起在科罗拉多州一起滑雪.很不幸,Bessie滑雪技术并不精湛. Bessie了解到,在滑雪场里,每天会提供S(0<=S& ...

  4. 关于ADMM的研究(一)

    关于ADMM的研究(一) 最近在研究正则化框架如何应用在大数据平台上.找到了<Distributed Optimization and Statistical Learning via the ...

  5. 【Bzoj 3295】 动态逆序对(树套树|CDQ分治)

    [题意] 每次删除一个数,然后问删除前逆序对数. [分析] 没有AC不开心.. 我的树状数组套字母树,应该是爆空间的,空间复杂度O(nlogn^2)啊..哭.. 然后就没有然后了,别人家的树套树是树状 ...

  6. AFNetworking网络请求的get和post步骤

      1.首先通过第三方:CocoaPods下载AFNetworking 1.1.先找到要查找的三方库:pod search + AFNetworking 1.2.出来一堆列表页面,选择三方库最新版本命 ...

  7. Android用户界面 UI组件--TextView及其子类(五) DigitalClock,AnalogClock,RadioButton,CheckBox,ToggleButton汇总

    DigitalClock和AnalogClock两个时钟类 可以为DigitalClock设置背景图片,自定义时针,秒针,分针的样式 例子: <?xml version="1.0&qu ...

  8. Android 如何把一个 RelativeLayout或ImageView背景设为透明

    在项目中,需要把RelativeLayout 和  ImageView背景设置为透明,怎么实现呢?这里主要通过代码,请参阅以下关键代码: public ImageView imgDetail; pri ...

  9. Vijos_1218_数字游戏_(划分型动态规划+环状动态规划)

    描述 https://vijos.org/p/1218 给出n个数围成一个环,将其划分成k个部分,每个部分求和再对10取模,最后将每个部分的值相乘,求其最大值与最小值. 描述 丁丁最近沉迷于一个数字游 ...

  10. 【转】iOS开发者账号和证书

    原文网址:http://www.jianshu.com/p/8e967c1d95c2 从Xcode7之后,苹果支持了免证书调试,但是若是需要调试推送功能,或者需要发布App,则需要使用付费的开发者账户 ...