java 之 javaBean

Posted zero_vic

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 之 javaBean相关的知识,希望对你有一定的参考价值。

什么是JavaBean?


JavaBean是特殊的Java类,使用J ava语言书写,并且遵守JavaBean API规范。

JavaBean与其它Java类相比而言独一无二的特征:

  • 提供一个默认的无参构造函数
  • 需要被序列化并且实现了Serializable接口
  • 可能有一系列可读写属性。
  • 可能有一系列的"getter"或"setter"方法

 


序列化JavaBean

 序列化:是将对象数据分解成字节流,写入字节流,以便存储在文件中。

反序列化:是打开字节流,从字节流中读取对象并重构对象

通过将数据库中的表与JavaBean组件形成映射关系可以实现JavaBean组件的持久化。但是由于关系型数据库与面向对象机制不同,为了方便存储JavaBean的某时状态,JavaBean规范了提供序列化机来通过文件系统存储JavaBean快照


JavaBean属性


一个JavaBean对象的属性应该是可访问的。这个属性可以是任意合法的Java数据类型,包括自定义Java类。

一个JavaBean对象的属性可以是可读写,或只读,或只写。JavaBean对象的属性通过JavaBean实现类中提供的两个方法来访问:

JavaBean 程序示例

public class StudentsBean implements java.io.Serializable
{
   private String firstName ;
   private String lastName ;
   private int ;
private boolean isVip;
public StudentsBean() { } public String getFirstName(){ return firstName; } public String getLastName(){ return lastName; } public int getAge(){ return age; } public void setFirstName(String firstName){ this.firstName = firstName; } public void setLastName(String lastName){ this.lastName = lastName; } public void setAge(int age) { this.age = age; }
public boolean isVip() {
return isVip;
  }
  public void setVip(boolean isVip){
  this.isVip = isVip;
  } }

访问JavaBean


<jsp:useBean> 标签可以在JSP中声明一个JavaBean,然后使用。声明后,JavaBean对象就成了脚本变量,可以通过脚本元素或其他自定义标签来访问。<jsp:useBean>标签的语法格式如下:

<jsp:useBean id="id" class="bean 编译的类" scope="bean 作用域"></jsp:useBean>

简单实用javabean:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <h2>JSP use javabean</h2> <jsp:useBean id="date" class="java.util.Date" />
  </jsp:useBean> <%= date %> </body> </html>

访问 JavaBean 对象的属性


在 <jsp:useBean> 标签主体中使用 <jsp:getProperty/> 标签来调用 getter 方法,使用 <jsp:setProperty/> 标签来调用 setter 方法,语法格式如下:

<jsp:useBean id="id" class="bean 编译的类" scope="bean 作用域">
   <jsp:setProperty name="bean 的 id" property="属性名"  
                    value="value"/>
   <jsp:getProperty name="bean 的 id" property="属性名"/>
   ...........
</jsp:useBean>

简单例子

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<html>
<head>
<title>get 和 set 属性实例</title>
</head>
<body>

<jsp:useBean id="students" 
                    class="StudentsBean"> 
   <jsp:setProperty name="students" property="firstName"
                    value="小强"/>
   <jsp:setProperty name="students" property="lastName" 
                    value="王"/>
   <jsp:setProperty name="students" property="age"
                    value="10"/>
</jsp:useBean>

<p>学生名字: 
   <jsp:getProperty name="students" property="firstName"/>
</p>
<p>学生姓氏: 
   <jsp:getProperty name="students" property="lastName"/>
</p>
<p>学生年龄: 
   <jsp:getProperty name="students" property="age"/>
</p>

</body>
</html>

 

以上是关于java 之 javaBean的主要内容,如果未能解决你的问题,请参考以下文章

java 之 javaBean

JSP之JavaBean

JDK 之 Java Bean 内省机制

Java重要技术(12)内省之JavaBean

Java Bean

Java 之 BeanUtils 工具类