转载自  JSP JavaBean

JSP JavaBean

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

接下来给出的是JavaBean与其它Java类相比而言独一无二的特征:

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

JavaBean属性

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

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

方法 描述
getPropertyName() 举例来说,如果属性的名称为myName,那么这个方法的名字就要写成getMyName()来读取这个属性。这个方法也称为访问器。
setPropertyName() 举例来说,如果属性的名称为myName,那么这个方法的名字就要写成setMyName()来写入这个属性。这个方法也称为写入器。

一个只读的属性只提供getPropertyName()方法,一个只写的属性只提供setPropertyName()方法。


JavaBean 程序示例

这是StudentBean.java文件:

package com.runoob;public class StudentsBean implements java.io.Serializable
{private String firstName = null;private String lastName = null;private int age = 0;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;}
}

编译 StudentBean.java 文件(最后一个实例会用到):

$ javac StudentsBean.java

编译后获得 StudentBean.class 文件,将其拷贝到 <JSP 项目>/WebContent/WEB-INF/classes/com/runoob,如下图所示:


访问JavaBean

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

<jsp:useBean id="bean 的名字" scope="bean 的作用域" typeSpec/>

其中,根据具体情况,scope的值可以是page,request,session或application。id值可任意只要不和同一JSP文件中其它<jsp:useBean>中id值一样就行了。

接下来给出的是 <jsp:useBean> 标签的一个简单的用法:

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<html>
<head>
<title>useBean 实例</title>
</head>
<body><jsp:useBean id="date" class="java.util.Date" />
<p>日期为:<%= date %></body>
</html>

它将会产生如下结果:

日期为:Tue Jun 28 15:22:24 CST 2016

访问 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>

name属性指的是Bean的id属性。property属性指的是想要调用的getter或setter方法。

接下来给出使用以上语法进行属性访问的一个简单例子:

<%@ 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="com.runoob.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>

访问以上 JSP,运行结果如下:

学生名字: 小强学生姓氏: 王学生年龄: 10

JSP JavaBean相关推荐

  1. 基于Servlet+JSP+JavaBean开发模式的用户登录注册

    基于Servlet+JSP+JavaBean开发模式的用户登录注册 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复 ...

  2. JSP+JavaBean+Servlet工作原理实例…

    JSP+JavaBean+Servlet工作原理实例讲解 首先,JavaBean和Servlet虽都是Java程序,但是是完全不同的两个概念.引用mz3226960提出的MVC的概念,即M-model ...

  3. JSP JavaBean

    JSP JavaBean JavaBean是特殊的Java类,使用J ava语言书写,并且遵守JavaBean API规范. 接下来给出的是JavaBean与其它Java类相比而言独一无二的特征: 提 ...

  4. JSP+JavaBean+Servlet技术(MVC模型)

    一,Servlet开发 用户在浏览器中输入一个网址并回车,浏览器会向服务器发送一个HTTP请求.服务器端程序接受这个请求,并对请求进行处理,然后发送一个回应.浏览器收到回应,再把回应的内容显示出来.这 ...

  5. JavaWeb开发模式:C/S模式,B/S模式,JSP+JavaBean模式,JSP+Servlet+JavaBean模式

    JavaWeb开发模式 1.C/S开发模式 1.C/S架构:客户端Client/服务端Server: a.出现较早,主要应用于局域网内: b.胖客户端:需要特定软件支持(安装客户端) 逻辑关系图如下: ...

  6. javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册

    一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...

  7. javaweb学习总结(二十二):基于Servlet+JSP+JavaBean开发模式的用户登录注册

    一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...

  8. javaweb学习总结——基于Servlet+JSP+JavaBean开发模式的用户登录注册

    一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...

  9. 方立勋_30天掌握JavaWeb_(Servlet+JSP+JavaBean实现)用户注册和登陆

    JSP+JavaBean模式适合开发业务逻辑不太复杂的web应用程序,这种模式下,JavaBean用于封装业务数据,JSP即负责处理用户请求,又显示数据. Servlet+JSP+JavaBean(M ...

  10. 方立勋_30天掌握JavaWeb_(JSP+JavaBean实现)简单计算器

    JSP+JavaBean模式适合开发业务逻辑不太复杂的web应用程序,这种模式下,JavaBean用于封装业务数据,JSP即负责处理用户请求,又显示数据. Servlet+JSP+JavaBean(M ...

最新文章

  1. altium designer布线调整时不自动删除旧线
  2. 多维数组(C# 编程指南)
  3. linux下grub故障(使用光盘进入救援模式)
  4. linux deepin sudo: add-apt-repository:找不到命令 解决办法
  5. 《算法学习与应用 从入门到精通》——填写运算符
  6. php中mysql和mysqli_php mysqli中-和::有什么区别?
  7. Asp.Net Core 轻松学-正确使用分布式缓存
  8. oftc注册服务器占用,golang服务器程序运行过程中崩溃,报错:fatal error: runtime: out of memory...
  9. 桂林电子科技大学计算机专业排名,桂林电子科技大学专业排名怎样
  10. 期货市场技术分析05_交易量和持仓兴趣
  11. Zabbix 对接 LDAP 实现用户统一登录的方法
  12. 第三章_深度学习基础
  13. 【分词】从why到how的中文分词详解,从算法原理到开源工具
  14. 量子纠缠2——CHSH不等式
  15. 十个有趣的“大数据”经典数据挖掘案例
  16. 王者荣耀微信一区的服务器没了,为什么王者荣耀微信区和QQ区玩起来像两个游戏?...
  17. 二维码扫描枪为何在商超店铺中受到欢迎呢?
  18. vivo 官网资源包适配多场景的应用
  19. Android解决ViewPager页面滑动空白bug和图片点击bug
  20. 最简单的24点游戏c语言,C语言解24点游戏程序

热门文章

  1. Java面向对象编程(高级)
  2. [剑指offer]面试题3:二维数组中的查找
  3. 树的存储结构-孩子链表
  4. C++set容器-内置类型指定排序
  5. JAVA两类比较器的区别(Comparable,Comparator)
  6. python二维数组遍历输出每行最大值_如何在二维数组中找到每行的最大值?
  7. 蓝桥杯 日志统计 尺取
  8. 网络时延——发送时延和传播时延
  9. Acwing 252. 树 点分治
  10. P1020 导弹拦截(n*log n时间的最长上升子序列思想)