实验二、JavaBean组件程序设计

一、实验目的

1 理解 JavaBean 的作用;

2 能够定义 JavaBean;

3 能在 JSP 页面中使用 JavaBean。

二、实验内容与要求

实验内容:

1.实现功能说明:以用户注册信息页面为例,定义一个用户信息 JavaBean 并在JSP页面中通过jsp中通过直接访问或标签两种形式进行调用。实现下列功能:

(a)创建一个用户注册信息输入页面,用户输入信息包括:姓名、学号、登录密码、性别、年龄、籍贯、选修课程以及个人简介,其中性别为布尔值、选修课程为多选;

(b)定义用户信息JavaBean,其内容与用户注册表单相一致;

(c)创建一个用户信息保持页面,在JSP中使用标签形式,根据前一个页面提交的注册信息构造用户信息JavaBean对象,注意设置其作用范围;

(d)创建一个用户登录以及验证页面,用户通过输入姓名和密码来进行系统登录,当用户名和密码与JavaBean中的信息一致时允许登录,否则输出错误信息或转向错误页面。

2.实验所涉及的基本概念及原理:

(a)JavaBean是符合某种规范的Java组件,也就是Java类。

它必须满足如下规范:

  • JavaBean是一个public的类;
  • JavaBean有一个无参数的构造方法;

③JavaBean的每个属性最好是private的,每个属性有一对get和set方法,通过get和set方法来读取和设置属性。

④JavaBean中可以增加业务方法,来进行数据库的访问操作

(b) 基于JavaBean,在JSP页面中访问其的方法有2种: 直接访问和JSP标签访问:

①直接访问,具体方法:首先声明bean,然后在页面顶部导入JavaBean类: <%@ page import="mytrain.formbean.userBean" %>,并在JSP段实例化类: <% userBean user = new userBean(); %>;访问bean的具体代码:

<% user.setXXX(aa); %>

<%=user.getXXX();%>

②标签访问,具体方法:首先声明bean,然后使用userBean标签:

<jsp:useBean id="user" class="mytrain.formbean.userBean"/>,具体访问则通过setProperty标签来设置:

<jsp:setProperty name="user"  property="name" param="mUserName"/>

通过getProperty标签来取得:

<jsp:getProperty name="user" property="name"/

3、实验要求:设计代码验证上述方法并调试程序是否正常运行

三、实验步骤(含参考的核心代码与配置文件)

(1)以基于用户名和密码的JavaBean应用为例,实现将用户名和密码存放在JavaBean中的功能:

设JavaBean为UserBean.java,

代码如下:

package mytrain.formbean;    

public class userBean {         

    private String name;  

    private String password;        

    public String getName() {  

        return name;  

    }  

    public void setName(String name) {  

        this.name = name;  

    }  

      

    public String getPassword() {  

        return password;  

    }  

    public void setPassword(String password) {  

        this.password = password;  

    }  

}

(2)直接访问JavaBean,在一个页面完成注册信息、输出Javaben信息功能,参考代码:

<%@ page language="java" pageEncoding="GBK"%>  

<%@ page import="mytrain.formbean.userBean" %>  

  

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  

<html>  

  <head>  

    <title>表单Bean例子3</title>  

    <link rel="StyleSheet" href="../../CSS/style.css" type="text/css" />  

  </head>      

  <body>      

  <form action="" method="post">      

      <span class="blue10">用户名:</span>  

     <input type="text" name="mUserName" size="20"><br>  

    <span class="blue10">密  码:</span>  

     <input type="password" name="mPassword" size="20"><br>  

     <input type=submit value="submit"/>  

  </form>  

   

  <%   

    userBean user = new userBean();  

    user.setName(request.getParameter("mUserName"));  

    user.setPassword(request.getParameter("mPassword"));  

  %>  

  <hr/>  

  用户名:<%=user.getName()%>  

  <br>  

  密  码:<%=user.getPassword()%>  

   </body>  

</html>  

实验截图:

 

(3)使用标签访问,功能与(2)类似,页面参考代码

<%@ page language="java" pageEncoding="GBK"%>  

  

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  

<html>  

  <head>  

    <title>表单Bean例子2</title>  

    <link rel="StyleSheet" href="../../CSS/style.css" type="text/css" />  

  </head>  

     <body>  

  <form action="" method="post">  

      <span class="blue10">用户名:</span>  

      <input type="text" name="mUserName" size="20"><br>  

     <span class="blue10">密  码:</span>  

     <input type="password" name="mPassword" size="20"><br>  

    <input type=submit value="submit"/>  

  </form>  

   <jsp:useBean id="user" class="mytrain.formbean.userBean"/>  

  <jsp:setProperty name="user"  property="name" param="mUserName"/>  

  <jsp:setProperty name="user"  property="password" param="mPassword"/>  

  用户名:<jsp:getProperty name="user" property="name"/>  

  <br>  

  密  码:<jsp:getProperty name="user" property="password"/>  

  </body>  

</html>

实验截图:

 

思考题

在JSP页面中使用JavaBean的动作有哪几个?

动作:jsp:useBean,jsp:setProperty,jsp:getProperty

四、知识扩展

假设所有用户信息存储在List对象中,对用户管理子系统中的所有用户,用标签结合JavaBean,在视图上展示出来。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值