首页 > 代码库 > JavaBean的用法

JavaBean的用法

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="http://www.mamicode.com/指定值"/>

<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="http://www.mamicode.com/苍井空"/>

这句话的意思是,设定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的用法