JavaBean是一个可重复使用的软件组件,是用Java语言编写的、遵循一定标准的类。

JavaBean是Java Web的重要组件,它封装了数据和操作的功能类,供JSP和Servlet调用,完成数据封装和数据处理等功能。

 

既然JavaBean是一个遵循标准的类,那么标准是什么?

JavaBean的设计规则:

  • JavaBean是一个公共类。
  • JavaBean类具有一个公共无参的构造方法。
  • JavaBean所有的属性定义为私有。
  • JavaBean中,需要对每个属性提供两个公共方法,Set方法和Get方法。
  • 定义JavaBean时,通常放在一个命名的包下。

毕竟公式,定义什么的都比较难懂,那就举个例子吧。

package beans //这一句表示JavaBean放在beans的包下

Public class User{

    private String name;

    private
int
age;

    private String sex;

    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 String getSex() {

        return
sex;

    }

    public
void setSex(String sex) {

        this.sex = sex;

    }

}

在设计网站后台时,我们可能会用到用户的姓名,年龄,性别,我们如果使用JavaBean的类将用户的信息封装,使用的时候可以调用set,get方法来设置和获取他们的值。

Set,get方法的语法:

setxxx():用来设置属性xxx的值。

getxxx():用来获取属性xxx的值。

那如果你使用Eclipse来编辑的话,那就厉害了,有一个快捷生成set,get方法的途径。

我们介绍完JavaBean的定义,接下来我们介绍在JSP中怎么使用JavaBean。

JavaBean的使用

在jsp中我们可以使用动作标签来访问JavaBean,也可以使用脚本代码访问,在这里我们介绍第一种。

主要有三种动作标签

  • <jsp:useBean>:声明并创建对象。
  • <jsp:setProperty>:设置指定属性的值。
  • <jsp:getProperty>:获取指定属性的值。

使用的时候,还要注意他们的声明格式:

<jsp:useBean id="对象名" class="类名" scope="有效范围"/>

<jsp:setProperty name=" 对象名" property="属性名" value="指定值"/>

<jsp:getProperty name=" 对象名" property=" 属性名"/>

我们接着上面的例子再接着举几个例子。

<jsp:useBean id="user1" class="beans.User" scope="session"/>

这句话的意思是,定义一个User类的对象user1,范围是session。

类名必须使用完全限定类名。

Scope属性有page, requese, session, application四个可选值,分别代表页面,请求,会话,应用4种范围。

 

<jsp:setProperty name="user1" property="name" value="苍井空"/>

这句话的意思是,设定user1对象的name属性值为"苍井空"。

<jsp:setProperty>还有几种变型:

  1. <jsp:setProperty name=" beanname " property=" propertyname" />
  2. <jsp:setProperty name=" beanname" property=" propertyname" param=" paramname"/>
  3. <jsp:setProperty name=" beanname" property="*" />

这几种变型主要处理form表单提交时的属性赋值。

  1. 将propertyname的值提交给beanname中的属性名称相同的属性。
  2. 将请求参数名称为paramname的值提交给propertyname属性。
  3. 将所有的属性与请求参数关联,实现自动复制并自动转换数据类型。

 

<jsp:getProperty name="user1" property="name"/>

这句话的意思是,将user1对象的name属性值显示在页面上。

注意,是直接显示在页面上!!!

 

JavaBean的安装部署

(如果使用Eclipse,软件会自动部署,这部分可跳过)

设计好的JavaBean类经过编译后还必须部署到Web应用程序中才能被JSP或者Servlet应用。

将单个JavaBean类部署到"../WEB-INF/classes/"下。

JavaBean的打包类Jar部署到"../WEB-INF/lib"下。

JavaBean的用法的更多相关文章

  1. JavaBean基本用法示例(二)

    JavaBean的第二种用法,是接收form组件的请求赋值. 一.修改person类.因为这一次是两个网页之间的数据传输,受中文乱码问题的影响,所以在person类中添加一个用于转码的函数,并且在每一 ...

  2. JavaBean基本用法示例(一)

    一.首先创建一个类person,里面有四个成员:name,sex,age,info,添加四个成员所有的set和get方法. package com.kaly.bean; public class pe ...

  3. jsp中JavaBean的用法

    UserRegisterBean.java:这是JavaBean package JavaBean; public class UserRegisterBean { private String us ...

  4. 什么是javabean及其用法

    一.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点: 这个Java类必须具有一个无参的构造函数 属性必须私有化. 私有化的属性必须通过public类型的方法 ...

  5. 什么是javabean及其用法(转)

    因工作需要 需要学习jsp方面的知识 这篇博客文章写得比较全面 我记录下: 一.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点: 这个Java类必须具有一个 ...

  6. (九)Javabean与Jsp(来自那些年的笔记)

    目录 JavaBean 在JSP中使用JavaBean 标签用法 带标签体的 JavaBean 标签 setProperty 标签 getProperty 标签 JSP开发模式 案列:使用 模式一 编 ...

  7. Java学习day11-类的成员之三:构造器(构造方法)

    一.构造器(构造方法) 语法格式: 修饰符 类名(参数列表){ 初始化语句: } 构造器的特征: 1.它具有与类相同的名称 2.它不声明返回值类型.(与声明为void不同) 3.不能被static.f ...

  8. JavaBean简介和用法

    一.JavaBean的含义 JavaBean是使用Java语言开发的一个可重用组件,能使Html代码与JAVA代码分离,并节省开发时间,简单的说就是一个包含了setter和getter以及至少一个无参 ...

  9. as 插件GsonFormat用法(json字符串快速生成javabean)

    GsonFormat 主要用于使用Gson库将JSONObject格式的String 解析成实体,该插件可以加快开发进度,使用非常方便,效率高. 插件地址:https://plugins.jetbra ...

随机推荐

  1. Linux的Shell

    Shell是命令行解释和执行器,是介于使用者和操作系统内核(Kernel)之间的一个接口: Bash (Bourne Again shell) 是Linux系统下经典的Shell;

  2. hihoCoder太阁最新面经算法竞赛15

    hihoCoder太阁最新面经算法竞赛15 Link: http://hihocoder.com/contest/hihointerview24 题目1 : Boarding Passes 时间限制: ...

  3. IO操作工具类

    package com.imooc.io; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; impor ...

  4. mybatis多对一关联

    mybatis多对一关联查询实现 1.定义实体 定义实体的时候需要注意,若是双向关联,就是说双方的属性中都含有对方对象作为域属性出现, 那么在写toString()方法时需要注意,只让某一方输出即可, ...

  5. 安装cocoapods

    1. 看一下ruby的版本 ruby -v 2. 删除默认源 gem sources --remove https://rubygems.org/ 3. 添加淘宝源 gem sources -a ht ...

  6. 一次基于etcd的分布式锁自动延时失败问题的排查

    今天在测试基于etcd的分布式锁过程中,在测试获取锁后,释放之前超出TTL时长的情况下自动延长TTL这部分功能,在延长指定key的TTL时总是返回404错误信息,在对目标KEY更新TTL时目标KEY已 ...

  7. iOS持续写文件到本地

    NSString *tempSavePath = [NSString stringWithFormat:@"%@/Documents",kDocumentPath]; NSFile ...

  8. R 培训之 Table

    res = read.table("ttest_expression.tsv",sep=",",header = TRUE)rownames(res)=res[ ...

  9. C# GetType与typeof

    在反射和泛型中经常会使用到Type类,获取Type的最常用的方法是 obj.GetType(),和typeof(T).在获取泛型的type时有些小坑. public static void Main( ...

  10. thinkphp添加数据

    <?php namespace Admin\Controller; use Think\Controller; class MainController extends Controller { ...