javaweb 八

本文详细介绍了JavaBean的概念和编码规范,包括其必须的公共构造方法和getter/setter方法。此外,文章还探讨了BeanUtils工具,用于动态访问Java对象属性,提高开发效率。接着,文章深入解析了EL表达式,包括基本语法、标识符规则、变量、常量、运算符以及隐式对象的使用,并通过实例展示了如何在Web应用中运用EL表达式来获取和操作数据。
摘要由CSDN通过智能技术生成

JavaBean和EL表达式
什么是JavaBean
JavaBean是Java开发语言中一个可以重复使用的软件组件,它本质上就是一个Java类。
为了规范JavaBean的开发,Sun公司发布了JavaBean的规范,它要求一个标准的JavaBean组件需要遵循一定的编码规范,具体如下。
它必须具有一个公共的、无参的构造方法,这个方法可以是编译器自动产生的默认构造方法它提供公共的 setter方法和getter方法,让外部程序设置和获取JavaBean的属性。为了让读者对 JavaBean 有一个直观上的认识,接下来编写一个简单的JavaBean。首先在Eclipse 中创建一个名为 chapter07 的 Web 项目,然后在项目的SrC目录下创建名为cn.itcast.chapter07.javabean的包,再在该包下创建Book类,代码如下所示。

package cn.itcast.chapter07;

public class Book {
	
	private double price;
	public double getPrice() {
	return price;
	}
	public void setPrice(double price) {
	this.price =price;
	}
}


访问Javabean的属性
在讲解面向对象时,经常会使用类的属性,类的属性指的是类的成员变量。在JavaBean 中同样也有属性,但是它和成员变量不是一个概念,它是以方法定义的形式出现的,这些方法 必须遵循一定的命名规范。
类的成员变量和属性的一个关系:
在普通的java类里面,成员变量可以说成就是属性。
在JavaBean里面,成员变量和属性就有了区别。
在JavaBean 里面的成员变量 private String id; 那么id就是成员变量
在JavaBean 的属性就是get或者set后面的字段名称(字段名称的首字母小写),就是属性。
比如:

public class Student {
		//一下就是javaBean的四个成员变量
		private String sid;//目的就是为了接收外界传递过来的值
		private String name;
		public Student() {
			
		}
		//属性由get或者set方法后面的字段首字母小写就是属性,属性就是id
		public String getId() {
			return sid;
		}
		public void setId(String id) {//写方法,给student写一个id
			this.sid = id;
		}
		//属性就是name
		public void setName(String name) {
			this.name = name;
		}
	}


BeanUtils 工具
大多数Java程序开发人员过去习惯于创建JavaBean,然后通过调用JavaBean 属性对的getter和setter方法来访问属性。但是,由于各种Java工具和框架层出不穷,并不能保正性对应的getter和seter方法总能被调用,因此,动态访问Java对象的属性是十分必要的。此,Apache软件基金会提供了一套简单、易用的API——BeanUtils工具。掌握它的使用将有助于提高程序的开发效率。本节将针对BeanUtils工具的相关知识进行详细的讲解。
截止到目前,BeanUtils的最新版本为Apache Commons BeanUtils 1.9.x,读者可以根据需要下载相应的版本。BeanUtils 工具包的官网首页地址为“http://commons.apache.org/propercommons-beanutils”,登录到官网首页后,单击左边菜单栏【BEANUTILS】→【Download】选项,即可跳转到BeanUtils的下载页面.
然后
(1)在chapter07项目的lib 目录中添加已下载的commons-beanutils- 1.9.2.jar和Logging的JAR包commons -logging-1.2.jar,并将这两个JAR包发布到类路径中。
(2)在项目的src 目录下创建一个名为cn.itcast.chapter07 的包,在包下创建Person类,Person类中定义了name和age两个属性,并提供了对应的getter方法和setter方法供外界访问这两个属性,具体代码如图下所示:

package cn.itcast.chapter07;

public class Person {
	
	private String name;private int age;
	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 Person() {
	super();
	}
	public String toString() {
	return"Person[name="+name +",age="+ age
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值