Java Web day9

七、EL表达式和JSTL

7.1 初识JavaBean

什么是JavaBean

JavaBean是java开发语言中一个可以重复使用的组件,本质是一个Java类。为了规范JavaBean的开发,Sun公司发布了JavaBean的规范,要求一个标准JavaBean组件需要遵循一定的编码规范:

  1. 它必须具有一个公共的、无参的构造方法,这个方法可以是编译器自动生成的默认构造方法。
  2. 它提供公共的setter方法和getter方法,让外部程序设置和获取JavaBean的属性。
    一个简单的JavaBean:
package cn.itcast.chapter07.javabean;

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

7.1.2 访问JavaBean的属性

在讲解面向对象时,经常会使用类的属性,类的属性指的是类的成员变量。
类的成员变量和属性的关系:

  1. 在普通的Java来中类的属性就是成员变量
  2. 在JavaBean里面成员变量和属性是不同的
  3. 在JavaBean 里面private String name; 中name就是成员变量
  4. 在JavaBean 里面的属性就是get或者set后面的字段名称(字段名称的首字母大写),就是属性。
package cn.itcast.chapter07.javabean;

public class Student {
	private String name;
	private String id;
	public String getId() {
		return id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	
}

7.1.3 BeanUtils工具

BeanUtils 工具是由apache软件基金会提供的一套封装数据到JavaBean的工具类,使用简单方便,
BeanUtils是第三方的工具(插件),所以需要导入jar包:
在这里插入图片描述
常用的api:

  1. 向javaBean的属性设置值:
    setProperty(javaBean对象,javaBean的属性,javaBean属性的值);
  2. 获取javaBean属性的值:
    getProperty(javaBean对象,javaBean的属性);
  3. 向javaBean的属性设置值:
    populate(javaBean对象,map对象);

7.2 EL表达式

7.2.1 初识EL

EL表达式可以简化JSP页面的书写。
EL表达式格式:

${表达式}

${表达式}中的表达式必须符合EL语法要求

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<form action="${pageContext.request.contextPath }/param.jsp" method="get">
		num1:<input type="text" name="num1"/><br/>
		num2:<input type="text" name="num"/><br/>
		num3:<input type="text" name="num"/><br/>
		<input type="submit" value="提交"/>&nbsp;&nbsp;<input type="reset" value="重填"/>
		<hr/>
		num1:${param.num1 }<br/>
		num2:${paramValues.num[0] }<br/>
		num3:${paramValues.num[1]}<br/>
	<form/>
</body>
</html>

在这里插入图片描述

7.2.2 EL中的标识符

规范:

  1. 不能以数字开头
  2. 不能是EL中的保留字,如:and、or、gt。
  3. 不能是EL隐式对象,如:pageContext。
  4. 不能包含单引号(’)、双引号(")、加减号(+ -)、正斜杠(/)等特殊字符。

7.2.3 EL中的保留字

在这里插入图片描述

7.2.4 EL中的变量

EL表达式中的变量就是一个基本的存储单元,EL表达式可以将变量映射到一个对象上。
格式:

${product}

product就是一个变量。

7.2.5 EL中的常量

  1. 布尔常量:true、false
  2. 整型常量:与Java中的十进制的整型常量相同
    -2的63次方 与 2的64次方-1 之间的整数
  3. 浮点数常量:用整数部分加小数部分表示(就是一个小数),也可用指数形式表示
    4.9E-324 ~ 1.8E308之间的浮点数
  4. 字符串常量:用单引号或双引号引起来的一连串字符。
  5. Null常量:Null常量用于表示变量引用的对象为空,只有null一个值

7.2.6 EL中的运算符

  1. 点运算符(.)
    用于访问JSP页面中某些对象的属性
${customer.name}
  1. 方括号运算符([ ])
    当获取的属性名中包含一些特殊符号,就只能使用方括号运算符来访问该属性
${user["my-name"]}
  1. 算术运算符
    加(+)、减(-)、乘(*)、除(/)、取余(%)
    在这里插入图片描述
  2. 比较运算符
    等于(==)、不等于(!=)、小于(<)、大于(>)、小于等于(<=)、大于等于(>=)
    在这里插入图片描述
  3. 逻辑运算符
    逻辑与(&&)、逻辑或( || )、逻辑非(!)
    在这里插入图片描述
  4. empty运算符
    EL表达式中的empty运算符用于判断某个对象是否为null或“ ”,结果为布尔类型
${empty var}
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	${empty person }<br/>
	${empty person }<br/>
	-----------------------------------<br/>
	1>3吗?${1>3 }<br/>
	-----------------------------------<br/>
	${user.my-name }<br/>
	${user["my-name"] }<br/>
	-----------------------------------<br/>
	${person.name }<br/>
	-----------------------------------<br/>
	<%=(String) request.getAttribute("usernamee") %><br/>
	<%=(String) request.getAttribute("password") %><br/>
	-----------------------------------<br/>
	-----${usernamee }-----<br/>
	${password }<br/>
	2020080605012杨骏<br/>
</body>
</html>

在这里插入图片描述
2020080605012

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值