Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 436|回复: 0

[jsp学习]在Jsp中使用JavaBean

[复制链接]
  • TA的每日心情
    开心
    2021-3-12 23:18
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2014-10-16 01:28:34 | 显示全部楼层 |阅读模式
    1javaBean组件标准
       
       
        ①实现java.io.Serializable接口
       
       
        ②提供无参数的构造方法
       
       
        ③提供getter()和setter()方法访问它的属性
       
       
        2.在JSP中使用JavaBean
       
       
        JSP规范中定义了<jsp:useBean>、<jsp:setProperty>、<jsp:useProperty>来建立对JavaBean的引用并读取/设置JavaBean的属性值。
       
       
         
       
       
        2.1 <jsp:useBean>
       
       
         
          
          
          
            <jsp:useBean id=”name” class=”classname” scope={“page
    equestsessionapplication”}/>
            
          
         
       
       
        执行过程:
       
       
        ①在指定的scope中查找名为name的JavaBean实例。
       
       
        ②若找到,则创建一个名为name、类型为classname的局部变量,其引用指向该JavaBean;若未找到,则在该scope中创建一个名为name、类型为classname的JavaBean,并创建相应的局部变量指向它。
       
       
         
       
       
        2.2<jsp:setProperty>
       
       
         
          
          
          
            <jsp:setProperty name=”beanName” propertyDetails/>
            
          
         
       
       
        其中:
       
       
        ①name=”beanName”是必选属性。其值为Bean的名称,在这之前用jsp:useBean引入的id。
       
       
        例:
       
       
         
          
          
          
            <jsp:useBean id=”usersession” scope=”session” class=”com.user.UserSession”>
            
          
            <jsp:setProperty name=”usersession” property=”name” value=”Tom”/>
            
          
            </jsp:useBean>
            
          
         
       
       
         
       
       
        ②propertyDetails可以通过四种不同的方法来指定属性的信息。
       
       
        [1]property=”*”
       
       
        这是一种设置Bean属性的快捷方式,在Bean中,属性的名称、类型必须和request对象中的参数名称相匹配。如果request对象的属性值中有空值,那么对应的Bean属性将不会设置任何值。同样,如果Bean中有一个属性没有与之对应的request参数值,那么这个属性同样不会设定。使用property=”*”,Bean的属性不用按HTML表单中的顺序排序。
       
       
        [2]property=”propertyName”
       
       
        使用request中的一个参数值来指定Bean中的一个属性值。这里,property指定Bean的属性名,而且Bean属性和request参数的名称应相同。如果request对象的参数值中有空值,那么对应的Bean属性将不会被设定任何值。
       
       
        [3]property=”propertyName” param=”parameterName”
       
       
        在Bean属性的名称和request中参数的名称不同时可以使用这个方法。Param指定request中的参数名。如果request对象的参数值中有空值,那么对应的Bean属性将不会被设定任何值
       
       
        [4]property=”propertyName” value=”propertyValue”
       
       
        value是一个可选属性,它使用指定的值来设定Bean的属性。如果参数值为空,那么对应的属性值也不会被设定。不能在一个<jsp:setProperty>中同时使用param和value。
       
       
         
       
       
        2.3 <jsp:getProperty>
       
       
        <jsp:getProperty>操作是对<jsp:setProperty>操作的补充,它用来访问一个Bean属性。
       
       
         
          
          
          
            <jsp:getProperty name=”beanName” propertry=”propertyName”/>
            
          
         
       
       
        ①name=”beanName”是必选属性。其值为Bean的名称,在这之前用jsp:useBean引入的id。
       
       
        例:
       
       
         
          
          
          
            <jsp:useBean id=”usersession” scope=”session” class=”com.user.UserSession”>
            
          
            <jsp:getProperty name=”usersession” property=”name” />
            
          
            </jsp:useBean>
            
          
         
       
       
         
       
       
        ②property=”propertyName”是一个必选属性。其值为所指定的Bean的属性名。
       
       
        3.注册实例1,使用property=”*”
       
       
        UserBean.java
       
       
         
          
          
          
            package com.zj.sample;
            
          
            import java.io.Serializable;
            
          
            /**
            
          
             * Create a JavaBean
            
          
             */
            
          
            public class UserBean implements Serializable {
            
          
                private static final long serialVersionUID = 1L;
            
          
                public String userName;
            
          
                public String password;
            
          
                public int age;
            
          
             
            
          
                public UserBean() {}
            
          
             
            
          
                public void setUserName(String name) {
            
          
                   this.userName = name;
            
          
                }
            
          
             
            
          
                public void setPassword(String password) {
            
          
                   this.password = password;
            
          
                }
            
          
             
            
          
                public void setAge(int age) {
            
          
                   this.age = age;
            
          
                }
            
          
             
            
          
                public String getUserName() {
            
          
                   return this.userName;
            
          
                }
            
          
             
            
          
                public String getPassword() {
            
          
                   return this.password;
            
          
                }
            
          
             
            
          
                public int getAge() {
            
          
                   return this.age;
            
          
                }
            
          
            }
             
          
         
       
       
         
       
       
        reg.html
       
       
         
          
          
          
            <html>
            
          
            <head>
            
          
              <meta http-equiv="Content-Type" content="text/html; charset=GB18030">
            
          
              <title>Reg</title>
            
          
            </head>
            
          
            <body>
            
          
              User Info:<br><hr>
            
          
              <form method="get" action="reg.jsp">
            
          
            <table>
            
          
                  // name="userName"对应UserBean属性
            
          
                  <tr><td>Name:<input name="userName" type="text"></td></tr>  
            
          
                  //name="password"对应UserBean属性
            
          
            <tr><td>Password:<input name="password" type="password"></td></tr>
            
          
             //name="age"对应UserBean属性
            
          
                  <tr><td>Age:<input name="age" type="text"></td></tr>
            
          
                  <tr><td><input type="submit" value="submit"></td></tr>
            
          
                </table>
            
          
              </form>  
            
          
            </body>
            
          
            </html>
             
          
         
       
       
         
       
       
        reg.jsp
       
       
         
          
          
            
            <%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312"%>
            <jsp:useBean id="user" scope="page" class="com.zj.sample.UserBean" />
    <jsp:setProperty name="user" property="*" />

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>Show Info</title>
    <body>
    用户信息:$ {param.userName}
    <br>密码:$ {param.password}
    <br>年龄:$ {param.age}
    <br>
    姓名:<jsp:getProperty name="user" property="userName"/>
    <br>
    口令:
    <%
    out.println(user.password);
    %>
    <br>年龄:
    $ {user.age}
    </body>
    </html>
             
          
         
       

       
         
         
          
          

            
          

            
          
         
       

      


    源码下载:http://file.javaxxz.com/2014/10/16/012834421.zip
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-6-16 09:35 , Processed in 0.439667 second(s), 48 queries .

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表