在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. Python学习笔记——正则表达式入门

    # 本文对正则知识不做详细解释,仅作入门级的正则知识目录. 正则表达式的强大早有耳闻,大一时参加一次选拔考试,题目就是用做个HTML解析器,正则的优势表现得淋漓尽致.题外话不多讲,直接上干货: 1. ...

  2. DataTable,DataSet,DataRow与DataView

    DataTable和DataSet可以看做是数据容器,比如你查询数据库后得到一些结果,可以放到这种容器里,那你可能要问:我不用这种容器,自己读到变量或数组里也一样可以存起来啊,为什么用容器?原因是,这 ...

  3. 我用C#调用C编译的dll中有这样一个函数,函数大概的功能就是把数据保存到buf缓冲区中:

    我用C#调用C编译的dll中有这样一个函数,函数大概的功能就是把数据保存到buf缓冲区中: C/C++ code   ? 1 int retrieve(int scanno,void* buf); 在 ...

  4. BZOJ 1634: [Usaco2007 Jan]Protecting the Flowers 护花

    Description Farmer John went to cut some wood and left N (2 <= N <= 100,000) cows eating the g ...

  5. Ubuntu使用wget下载jdk问题

    使用以下命令可下载成功,否则下载下来的可能是一个html文档. wget --no-cookies --no-check-certificate --header "Cookie:gpw_e ...

  6. Oracle core02_数据块

    数据更改 oracle core完成了oracle的核心功能,recovery,读一致性等. 深入的了解oracle的机制,就从一个最简单的更新开始.对于oracle来说,最大的一个特性就是写了两次数 ...

  7. oracle查询转换_view merge

    oracle对于子查询的支持做的很好,oracle optimizer会对inline view进行query transfomation,即视图合并,不过也经常带来意想不到的问题.下面是一个inli ...

  8. jackson 常见问题

    org.codehaus.jackson.map.JsonMappingException: No suitable constructor found for type   org.codehaus ...

  9. Unable to Rebuild JIRA Index

    Symptoms Accessing certain JIRA pages result in: SEVERE: Internal server error com.atlassian.jira.is ...

  10. 基于mongoDB的capped collection的性能优化

    MonitorLogging改造(消息接入) 改造前架构: 可以看出原来的流程中,大量业务分析,业务接入耦合在web服务层.大量操作,导致线程线性的挂起线程. 改造后: 将业务通讯抽象成为Monito ...