JavaBean的应用
1. 获取JavaBean属性信息
例1.1 在JSP页面中显示JavaBean属性信息。
(1)创建名称为Produce的类,该类是封装商品对象的JavaBean,在Produce类中创建商品属性,并提供相应的getXXX()方法。关键代码如下:
package com.cn.gao;
public class Produce {
//商品名称
private String name="电吉他";
private double price = 1880.5;
private int count = 100;
private String factoryAdd = "吉林省长春市XXX琴行";
public String getName() {
return name;
}
public double getPrice() {
return price;
}
public int getCount() {
return count;
}
public String getFactoryAdd() {
return factoryAdd;
}
}
(2)在JSP页面中获取商品JavaBean中的属性信息,该操作通过JSP动作标签进行获取。关键代码如下:
produce.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>"> <title>My JSP 'produce.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
--> </head> <body>
<jsp:useBean id="produce" class="com.cn.gao.Produce"></jsp:useBean>
<div>
<ul>
<li>
商品名称:<jsp:getProperty property="name" name="produce"/>
</li>
<li>
价格:<jsp:getProperty property="price" name="produce"/>
</li>
<li>
数量:<jsp:getProperty property="count" name="produce"/>
</li>
<li>
厂址:<jsp:getProperty property="factoryAdd" name="produce"/>
</li>
</ul>
</div>
</body>
</html>
本实例中主要通过<jsp:useBean>标签实例化商品的JavaBean对象,<jsp:getProperty>标签获取JavaBean中的属性信息。实例运行结果如下图:

注:<jsp:useBean>标签与<jsp:getProperty>标签之所以能够操作Java类,是因为我们所编写的Java类遵循了JavaBean规范。所以在编写JavaBean时要遵循制定的JavaBean规范。
2. 对JavaBean属性赋值
例2.1 创建商品对象的JavaBean,在该类中提供属性及与属性相对应的get和set方法,在JSP页面中对JavaBean属性赋值并获取输出。
(1)创建名称为Produce的类,该类是封装商品信息的JavaBean,在该类中创建商品属性及与属性相应的get和set方法。关键代码如下:
package com.cn.gao;
public class Produce {
//商品名称
private String name;
private double price;
private int count;
private String factoryAdd;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
public String getFactoryAdd() {
return factoryAdd;
}
public void setFactoryAdd(String factoryAdd) {
this.factoryAdd = factoryAdd;
}
}
(2)创建名称为produce.jsp页面,在该页面中实例化Produce对象,然后对其属性进行赋值并输出。关键代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>"> <title>My JSP 'produce.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
--> </head> <body>
<jsp:useBean id="produce" class="com.cn.gao.Produce"></jsp:useBean>
<jsp:setProperty property="name" name="produce" value="洗衣机"/>
<jsp:setProperty property="price" name="produce" value="888.88"/>
<jsp:setProperty property="count" name="produce" value="88"/>
<jsp:setProperty property="factoryAdd" name="produce" value="广东省XXX公司"/>
<div>
<ul>
<li>
商品名称:<jsp:getProperty property="name" name="produce"/>
</li>
<li>
价格:<jsp:getProperty property="price" name="produce"/>
</li>
<li>
数量:<jsp:getProperty property="count" name="produce"/>
</li>
<li>
厂址:<jsp:getProperty property="factoryAdd" name="produce"/>
</li>
</ul>
</div>
</body>
</html>
页面主要是通过<jsp:useBean>标签实例化商品的JavaBean对象,<jsp:setProperty>标签对Produce对象中的属性赋值,然后再通过<jsp:getProperty>标签输出已赋值的Produce对象中的属性信息。实例运行结果如下图所示:

JavaBean的应用的更多相关文章
- java web学习总结(二十九) -------------------JavaBean的两种开发模式
SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式. 一.JSP+JavaBean开发模式 1 ...
- java web学习总结(二十八) -------------------JSP中的JavaBean
一.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点: 这个Java类必须具有一个无参的构造函数 属性必须私有化. 私有化的属性必须通过public类型的方法 ...
- JavaBean的用法
JavaBean是一个可重复使用的软件组件,是用Java语言编写的.遵循一定标准的类. JavaBean是Java Web的重要组件,它封装了数据和操作的功能类,供JSP和Servlet调用,完成数据 ...
- JSP复习整理(五)JavaBean使用表单处理数据
一.先建立用户输入的数据 usingGetparameter.html <!DOCTYPE html> <html> <head> <meta charset ...
- JSP复习整理(五)JavaBean生命周期
一.创建一个JavaBean UserBean.java package jsp.test; public class UserBean { private String userName; priv ...
- 初识Jsp,JavaBean,Servlet以及一个简单mvc模式的登录界面
1:JSP JSP的基本语法:指令标识page,include,taglib;page指令标识常用的属性包含Language用来定义要使用的脚本语言:contentType定义JSP字符的编码和页面响 ...
- json、javaBean、xml互转的几种工具介绍
json.javaBean.xml互转的几种工具介绍 转载至:http://blog.csdn.net/sdyy321/article/details/7024236 工作中经常要用到Json.Jav ...
- javabean和jsp动作元素
model1就是利用了jsp和javabean 的组合来处理问题.jsp页面如果有太多的逻辑代码的话,维护起来和扩展起来是相当的麻烦的.所以jsp的逻辑代码部分都打包到一种java类当中进行编写.这种 ...
- J2EE基础之JavaBean
J2EE基础之JavaBean 1.什么是JavaBean? JavaBean本质上来说就是一个Java类,它通过封装属性和方法成为具有独立功能.可重复使用的,并可以与其他控件通信的组件对象.通过在J ...
- 编写、部署、应用JavaBean
编写javabean 编写javabean实质上就是编写一个java类.设计javabean类就是要设计这个javabean的属性和方法,类的方法的命名遵循以下规则: 1)如果成员变量的名字是xx ...
随机推荐
- 2017-2018 ACM-ICPC, NEERC, Moscow Subregional Contest B - Byteland Trip dp
B - Byteland Trip 题目大意:给你一个由'<' 和 '>'组成的串, 如果在'<' 只能前往编号比它小的任意点, 反之只能前往比它大的任意点,问你能遍历所有点 并且每 ...
- thinkphp3.2开启静态缓存与缓存规则设置
网站的静态缓存对大访问量有很好的缓解作用,尤其对网站的大并发,可有效的缓解数据库的压力.在thinkphp中实现静态缓存很简单,thinkphp都已经封装好了直接调用即可. 静态缓存 首先设置 H ...
- IP、TCP和DNS与HTTP的密切关系
看了上一篇博文的发表时间,是7月22日,现在是10月22日,已经有三个月没写博客了.这三个月里各种忙各种瞎折腾,发生了很多事情,也思考了很多问题.现在这段时间开始闲下来了,同时该思考的事情也思考清楚了 ...
- 查看锁信息(开启InnoDB监控)
当前mysql版本:5.6.21 一.背景 在mysql处理死锁问题时,由于show engine innodb status输出来的死锁日志无任务事务上下文,并不能很好地诊断相关事务所持有的所有锁信 ...
- Linux教程 - 管道和重定向
管道和重定向! 保持数据流动 介绍 在前两节中,我们看了一些可以为我们操作数据的过滤器.在本节中,我们将看到我们如何将它们结合在一起来执行更强大的数据操作. 本节涉及一些阅读.即使这些机制及其 ...
- 【BZOJ 2721】 2721: [Violet 5]樱花 (筛)
2721: [Violet 5]樱花 Time Limit: 5 Sec Memory Limit: 128 MBSubmit: 599 Solved: 354 Description Input ...
- 工作中怎么解决bug
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 1,看日志 2,看日志解决不了,断点调试 3,网络搜索.
- Spring AOP笔记
AOP的核心概念 AOP(Aspect-Oriented Programming)面向切面编程可以实现横切点与他们所影响的对象之间的解耦.如将公共的日志.权限.事务等业务隔离出来,但不影响原来程序的逻 ...
- 【BZOJ-1194】潘多拉的盒子 拓扑排序 + DP
1194: [HNOI2006]潘多拉的盒子 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 456 Solved: 215[Submit][Stat ...
- codevs 1073 家族 并查集
家族 Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://www.codevs.cn/problem/1073/ Description 若某个家族 ...