JavaBean 是一个遵循特定写法的 Java 类,它有以下特点:

1. Java 类具有一个无参的构造函数

2. 属性必须私有化。

3. 私有化的属性通过 public 类型的方法暴露给其它程序,并且方法命名遵守相关命名规范。

JavaBean 在 J2EE 开发中,用于封装数据,对于遵循以上写法的 JavaBean 组件,其它程序可以通过反射

技术实例化 JavaBean 对象,并且通过反射那些遵守命名规范的方法,从而获知 JavaBean 的属性,进而

调用其属性保存数据。

在 Jsp 中使用 JavaBean

Jsp 技术提供了三个关于 JavaBean 组件的动作元素,即 Jsp 标签,它们分别为:

<jsp:useBean> 用于在 Jsp 页面中查找或实例化一个 JavaBean 组件。

<jsp:setProperty> 用于在 Jsp 页面中设置一个 JavaBean 组件的属性。

<jsp:getProperty> 用于在 Jsp 页面中获取一个 JavaBean 组件的属性。

public class Person {
private String name;
private int age;
}

先写一个这样的类,然后右键 -> Source -> Generate Getters and Setters 就会由 eclipse 自动生成 get / set 方法。

<jsp:useBean id="person" class="cn.itcast.domain.Person" scope="page"></jsp:useBean>

<!-- 手动赋值 -->
<jsp:setProperty name="person" property="name" value="xx123xx"></jsp:setProperty>
<%=person.getName()%><br />
<hr />
<!-- 用请求参数给 bean 属性赋值 -->
<jsp:setProperty name="person" property="name" param="name" />
<jsp:setProperty name="person" property="age" param="age" />
<!-- http://localhost:8088/day09/1.jsp?name=%E4%B8%AD%E5%9B%BD%20%E4%BA%BA&age=121&birthday=2015-01-12 -->
<%-- <jsp:setProperty name="person" property="birthday" value="<%=new Date() %>" /> --%>
<%=person.getName()%><br />
<%=person.getAge()%><br />
<%=person.getBirthday()%><br />
<hr />
<jsp:setProperty property="*" name="person"/>
<%=person.getName()%><br /> // 此句与下面的得到相同结果。
<jsp:getProperty property="age" name="person"/><br />
<jsp:getProperty property="birthday" name="person"/><br />

以上代码,演示使用了 各标签的使用场景和方法。

如果一个 JavaBean 实例对象的某个属性值为 null 那么  jsp:getProperty 标签输出的结果是 "null" 字符串。

[转]Jsp 与 JavaBean的更多相关文章

  1. jsp 以及javabean内省技术

    l JSP l JavaBean及内省 l EL表达式 1.1 上次课内容回顾 会话技术: Cookie:客户端技术.将数据保存在客户端浏览器上.Cookie是有大小和个数的限制. Session:服 ...

  2. JSP+Servlet+javabean+oracle实现页面多条件模糊查询

    之前写过一篇JSP+Servlet+javabean+mysql实现页面多条件模糊查询 使用的是mysql进行的分页查询,mysql用limit控制,而oracle则是用rownum,今天第一次写or ...

  3. jsp学习---使用jsp和JavaBean实现超简单网页计算器

    一.需求 如题,用jsp实现一个超简单的网页计算器. 二.实现 1.效果图 1)初始界面: 2)随便输入两个数进行相乘: 3)当除数为零时提示报错: 2.代码 Calculator.java pack ...

  4. javaWeb 使用 jsp 和 javaBean 实现计算器功能

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...

  5. JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门

    2 JSP内置标签(美化+业务逻辑)   1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容   2)JSP内 ...

  6. JSP中使用的模式——JSP+Servlet+JavaBean

    上一篇博文写到模式一:JSP+JavaBean 链接地址:http://wxmimperio.coding.io/?p=155 JSP中两种模式的总结 链接地址:http://wxmimperio.c ...

  7. MVC jsp+servlet+javabean 连接Mysql数据库測试demo

    本文介绍的是怎样使用MVC架构去实现jsp+servlet+javabean连接数据库 首先我们应该了解什么是MVC: MVC包含三个部分 : ①View:由各种JSP页面组成. ②Controlle ...

  8. 深入浅出Java MVC(Model View Controller) ---- (JSP + servlet + javabean实例)

    在DRP中终于接触到了MVC,感触是确实这样的架构系统灵活性不少,现在感触最深的就是使用tomcat作为服务器发布比IIS好多了,起码发布很简单,使用起来方便. 首先来简单的学习一下MVC的基础知识, ...

  9. JSP共享javabean

    JavaBean是一种可重复使用,且跨平台的软件组件.JavaBean可分为两种:一种是有用户界面(UI)的javaBean:还有一种是没有用户界面,主要负责处理事务(如数据运算,操纵数据库)的jav ...

  10. jsp+servlet+javabean开发web项目

    一.介绍: 项目依赖包:jdbc数据库包 jsp+servlet+javabean开发web项目,是最接近web项目原生运行原理的. 但是,jsp内容混乱,项目结构复杂时,代码会混乱 二.运行原理: ...

随机推荐

  1. 【日志过滤】Nginx日志过滤 使用ngx_log_if不记录特定日志

    ngx_log_if是Nginx的一个第三方模块.它在Github上的描述是这样介绍的:ngx_log_if是一个独立的模块,允许您控制不要写的访问日志,类似于Apache的"CustomL ...

  2. MyBatis的简单入门学习

    一个新知识开始是最难学的.(万事开头难) MyBatis大体分三层,接口层,数据处理层,基础支撑层. 其中接口层不是java中的那个interface,而是框架和程序员之间的对接.一个API,程序员可 ...

  3. UVa 1662 Brackets Removal

    https://vjudge.net/problem/UVA-1662 题意: 给出一个序列,判断序列中哪些括号是可以去掉的,只可以改变符号.输出括号最少的序列. 思路: 感觉这道题目就是写起来繁琐了 ...

  4. UVa 11489 整数游戏

    https://vjudge.net/problem/UVA-11489 题意: 给出一个数字串n,两个人轮流从中取出一个数字,要求每次取完之后剩下的数是3的倍数,不能取数者输. 思路: 要想取掉一个 ...

  5. Symmetric Tree,对称树

    问题描述: Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center). ...

  6. C++中ceil、floor和round的区别

    Math类中提供了三个与取整有关的方法:ceil,floor,round,这些方法的作用于它们的英文名称的含义相对应 1.ceil的英文意义是天花板,该方法就表示向上取整,Math.ceil(11.3 ...

  7. Java回顾之序列化

    在这篇文章里,我们关注对象序列化. 首先,我们来讨论一下什么是序列化以及序列化的原理:然后给出一个简单的示例来演示序列化和反序列化:有时有些信息是不应该被序列化的,我们应该如何控制:我们如何去自定义序 ...

  8. linux下升级npm以及node

    npm升级 废话不多说,直接讲步骤.先从容易的开始,升级npm. npm这款包管理工具虽然一直被人们诟病,很多人都推荐使用yarn,但其使用人数还是不见减少,况且npm都是随node同时安装好的,一时 ...

  9. 使用扩展方法(Chapter3 P39-41)

    namespace LanguageFeatures { public class ShoppingCart { public List<Product> Products { get; ...

  10. java实现的18位身份证格式验证算法

    公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码.1.地址码表示编码对象常住户口所在县(市. ...