在JSP中使用JavaBean

在JSP中使用JavaBean


一. 调用JavaBean

在JSP中使用JavaBean,要使用<jsp:useBean>动作指令,其语法如下:

<jsp:useBean id = "对象名称" scope = "存储范围" class = "类名"></jsp:useBean>

属性的解析:

属性名解释
idJavaBean实例化后的对象名称
scopeJavaBean实例化后的对象存储范围,范围的取值有page,request,session,application
classJavaBean的全类名,即“包名+类名“

范例: 在JSP中调用JavaBean,并通过设置属性,获得属性值。
1.在package工作台创建一个web project,名称为JavaWeb04.
2.在src文件夹下面new一个叫Teacher的class,包名为com.MyJavaBean.text,这就是自定义的JavaBean。代码如下:
Teacher.java

package com.MyJavaBean.text;

public class Teacher {
      private String name;
      private int age;
      private boolean sex;
      private String professional;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public boolean isSex() {
		return sex;
	}
	public void setSex(boolean sex) {
		this.sex = sex;
	}
	public String getProfessional() {
		return professional;
	}
	public void setProfessional(String professional) {
		this.professional = professional;
	}
}

UseBeanDemo.jsp

<%@ page language = "java" pageEncoding = "gb2312" %>
<html>
     <head>
          <title>
                UseBeanDemo
          </title>
     </head>
     <body>
             <%-- 通过useBean动作指令调用JavaBean --%>
           <jsp:useBean id = "teacher" scope = "page" class = "com.MyJavaBean.text.Teacher"></jsp:useBean>
           <%  
              teacher.setName("李如云");//设置姓名
              teacher.setAge(30);//设置年龄
              teacher.setSex(true); //设置为男性
              teacher.setProfessional("讲师");//设置职称
           %>
           <%
              out.println("姓名:" + teacher.getName() + "<br>");
              out.println("年龄:" + teacher.getAge() + "<br>");
              if(teacher.isSex()){
                  out.println("性别:" + "男" + "<br>");
             }else{
                  out.println("性别:" + "女" + "<br>");
              }
              out.println("职称:" + teacher.getProfessional() + "<br>");
            %>
     </body>
</html>

在浏览器输入 http://localhost:8080/JavaWeb04/UseBeanDemo.jsp。如下图:
在这里插入图片描述
解析: <jsp:useBean>调用JavaBean,其作用类似于java中的关键字new,就是实例化了一个对象。

二. 设置JavaBean属性

在jsp中设置JavaBean属性,用<jsp:setProperty>。本节介绍开发中常用的两种语法格式:

<jsp:setProperty name = "实例化对象名" property = "属性名称" param = "参数名称" />
<jsp:setProperty name = "实例化对象名" property = "属性名称" value = "属性值" />

解释:

属性名描述
name<jsp:useBean>中的id要相同,是实例化的对象名
property要与JavaBean中的属性名称大小写相同
param要与JavaBean中的属性名称相同(不要求大小写相同)
value指定的值

三. 获取JavaBean属性

在jsp中获取JavaBean的属性,用<jsp:getProperty>动作指令。语法格式如下:

<jsp:getProperty name = "实例化对象名" property = "属性名称" />

范例: 获得JavaBean的属性值
AddTeacher.jsp

<%@ page language = "java" pageEncoding = "gb2312" %>
<html>
     <head>
          <title>
                 AddTeacher
         </title>
     </head>
     <body>
             <%-- 设置编码格式为gb2312 --%>
         <% request.setCharacterEncoding("gb2312"); %> 
         <jsp:useBean id="teacher" scope = "page" class = "com.MyJavaBean.text.Teacher">
         </jsp:useBean>
             <%-- 设置实例化对象的属性 --%>
             <jsp:setProperty name = "teacher" property = "*" />
             姓名: <jsp:getProperty name = "teacher" property = "name" />
             年龄:<jsp:getProperty name = "teacher" property = "age" />
             性别:<jsp:getProperty name = "teacher" property = "sex" />
             职称:<jsp:getProperty name = "teacher" property = "professional" />
     </body>
</html>

填写信息的表单,TeacherForm.jsp:

<%@ page language = "java" pageEncoding = "gb2312" %>
<html>
     <head>
          <title>
                TeacherForm
          </title>
     </head>
     <body>
      <form action = "AddTeacher.jsp" method = "post" >
            <table>
                <tr>
                      <td>姓名</td>
                      <td><input type = "text" name = "name" /></td>
                </tr>
                <tr>
                      <td>年龄</td>
                      <td><input type = "text" name = "age" /></td>
                </tr>
                <tr>
                      <td>性别</td>
                      <td>
                          <input type = "radio" name = "sex" value = "男" />
                          <input type = "radio" name = "sex" value = "女" />
                       </td>
                </tr>
                <tr>
                     <td>职称</td>
                     <td><input type = "text" name = "professional" /></td>
                </tr>
                <tr>
                     <td><input type = "submit" value = "添加" /></td>
                     <td><input type = "reset" value = "重置" /></td>
                </tr>
            </table>
       </form>
     </body>
</html>

在浏览器输入 http://locahost:8080/JavaWeb04/TeacherForm.jsp。如下:
在这里插入图片描述
输入如下信息,点击“添加”,如下:
在这里插入图片描述
页面跳转到如下界面,如下:
在这里插入图片描述
欢迎小伙伴来评论~

  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值