在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页面中的变量的更多相关文章
-
在一个py脚本中调用另外一个py脚本中的类或函数
1.两个文件在同一目录,直接import即可 2.两个文件在不同目录 在导入文件的时候,Python只搜索当前脚本所在的目录,加载(entry-point)入口脚本运行目录和sys.path中包含的路 ...
-
JSP页面中引入另一个JSP页面
一个JSP页面中引入另一个JSP页面,相当于把另一个JSP页面的内容复制到对应位置: <%@include file="date.jsp" %> 一般页面的top和bo ...
-
在一个jsp页面中引用另一个jsp文件的路径的问题
为了提高代码的重用性,经常需要在一个jsp页面中引用另一个jsp文件的代码.关于引用时的路径的问题.下面只介绍动态引用的,我觉得静态引用的应该也一样. 相对路径: 一.在同一个文件夹下,a.jsp中引 ...
-
在一个apk中调用另外一个apk中的activity
今天忽然想到如果要在一个activity中调用另外一个activity该怎么办呢? 感觉这个应该比较简单,应为activity的启动方式就两种:显式启动.隐式启动: 显式启动的话肯定不行,那就只能使用 ...
-
(转载)oracle 在一个存储过程中调用另一个返回游标的存储过程
原文链接:http://www.jb51.net/article/20160.htm 实际项目当中经常需要在一个存储过程中调用另一个存储过程返回的游标,本文列举了两种情况讲述具体的操作方法. 第一种情 ...
-
bug日记之---------js中调用另一个js中的有ajax的方法, 返回值为undefind
今天做一个OCR授权的需求, 需要开发一个OCR弹框, 让用户选择是否授权给第三方识别公司(旷世科技)保存和识别用户个人信息, 照片等. 其中用到了在一个js的方法中调用另外一个js的方法, 其中有一 ...
-
如何调用另一个python文件中的代码
模块的搜索路径 模块的搜索路径都放在了sys.path列表中,如果缺省的sys.path中没有含有自己的模块或包的路径,可以动态的加入(sys.path.apend)即可.下面是sys.path在Wi ...
-
[原创]C/C++语言中,如何在main.c或main.cpp中调用另一个.c文件
C/C++语言中,如何在main.cpp中调用另一个.c文件主要有5种思路: 1.在VS2012 IDE中,将被引用的.c文件后缀名全部修改为.h,然后通过IDE的解决方案资源管理器中鼠标右键单击“头 ...
-
Js文件函数中调用另一个Js文件函数的方法
在项目中Js文件需要完成某一功能,但这一功能的大部分代码在另外一个Js文件已经完成,只需要调用这个文件实现功能.那么如何调用:一个Js文件函数中调用另一个Js文件函数的方法? (直接代码说明) 示例d ...
随机推荐
-
Java知识积累-XML的DOM解析修改和删除方法
import java.io.File; import java.io.IOException; import javax.xml.parsers.DocumentBuilder;import jav ...
-
客户端JS性能的一些优化的小技巧
下面是一些关于客户端JS性能的一些优化的小技巧:1.[顶]关于JS的循环,循环是一种常用的流程控制.JS提供了三种循环:for(;;). while().for(in).在这三种循环中 for(in) ...
-
glut64位操作系统安装
64位win7下OpenGL的配置 - walkandthink的专栏 - 博客频道 - CSDN.NEThttp://blog.csdn.net/walkandthink/article/detai ...
-
如何学好oracle?(准备)
循序渐进 多练习 http://www.tudou.com/listplay/ScoGxMJZGQc/Nw9HE62XiGo.html
-
select poll使用
select poll使用 2.1. 怎样管理多个连接?“我想同一时候监控一个以上的文件描写叙述符(fd)/连接(connection)/流(stream),应该怎么办?” 使用 select ...
-
使用SQL Server 2005 新的语法ROW_NUMBER()进行分页的两种不同方式的性能比较
相比在SQL Server 2000 中使用的分页方式,在SQL Server 2005中使用新的语法ROW_NUMBER()来分页效率要高出很多,但是很多人在使用ROW_NUMBER()这种分页方式 ...
-
T-SQL存储过程
存储过程(procedure)就是一个函数,完成一段sql代码的封装,实现代码的重用. 优点: 1.比使用DotNet直接写Sql脚本执行少了一块解析编译的过程.效率更快一点点. ...
-
利用scrollintoview方法模拟聊天室收到新消息
这段时间再写一个聊天的功能,基本的原理已经通了,剩下的就是细化功能和实现了.原理通了不代表就能解决了这个问题,今天就遇到了一个小问题,就是在接收到新的消息以后,最新的消息不能显示在消息区域,而是跑到了 ...
-
剑指offer【05】- 用两个栈实现队列(java)
题目:用两个栈实现队列 考点:栈和队列 题目描述:用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. 解题思路:每次psuh是时先将stack2清空放入stck1(保 ...
-
SQL Server 限定删除一行
with t as ( )* from testtest where aa='aa' order by bb ) delete from t