专栏首页Danny的专栏在JSP页面中调用另一个JSP页面中的变量

在JSP页面中调用另一个JSP页面中的变量

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/details/16896447

         在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)通过request.setAttribute()方法:

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

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

                           <%request.setAttribute(name,"Danny");%>

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

                          <%String getName=request.getParameter("name"); %>

          (3)通过表单传参:

                  例:把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 %>

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

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

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

                             <%!int a=4; %>                              <form action="b.jsp" method="post">                                    <input type="hidden" 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">等。

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【SSH快速进阶】——struts2调用action的三种方式

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

    DannyHoo
  • 给你的项目添加一个灵活的“开关”

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

    DannyHoo
  • 在EasyUI的DataGrid中嵌入Combobox

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

    DannyHoo
  • python 面向对象之类方法

    类方法通过@classmethod装饰器实现,类方法和普通方法的区别是, 类方法只能访问类变量,不能访问实例变量

    py3study
  • 自制权限框架(一)jsp标签

    在我们的系统中,很多时候都用到了权限。最简单的权限就是登录。登录了,我就可以自己的相关信息;没有登录,就不能看到。

    小忽悠
  • Wyn Enterprise 核心功能:行业领先的在线数据报表设计体验

    Wyn Enterprise 将 BI 和报表融为一体,创新性的在线报表设计功能,提供类似微软 Office 产品的使用体验,功能丰富却极易上手。对软件公司而言...

    葡萄城控件
  • Python骚操作,提取pdf文件中的表格数据!

    在实际研究中,我们经常需要获取大量数据,而这些数据很大一部分以pdf表格的形式呈现,如公司年报、发行上市公告等。面对如此多的数据表格,采用手工复制黏贴的方式显然...

    诸葛青云
  • Python pyspider 安装与开发

    PySpider是一个国人编写的强大的网络爬虫系统并带有强大的WebUI。采用Python语言编写,分布式架构,支持多种数据库后端,强大的WebUI支持脚本编辑...

    阳光岛主
  • Python随笔(四)、python基础

    05 python s12 day4 迭代器原理及使用 什么是迭代: 可以直接作用于for循环的对象统称为可迭代对象(Iterable)。* 可以被next(...

    py3study
  • Python随笔day01

           如果无任何变量指向该对象时,当python自动运行垃圾回收器时,将回收这段内存。

    py3study

扫码关注云+社区

领取腾讯云代金券