一,认识JavaBbean
1.JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。
2.JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性,set和get方法获取。众所周知,属性名称符合这种模式,其他Java 类可以通过自省机制(反射机制)发现和操作这些JavaBean 的属性。
Beanutils工具
方法 | 描述 |
---|---|
populate(Object bean, Map<String,String[]>properties) | 将Map数据封装到指定Javabean中,一般用于将表单的所有数据封装到javabean |
setProperty | 设置属性值 |
getProperty | 获得属性值 |
定义转换器必须实现Converter接口
将字符串转换为java.sql.Date类型
将类型为Date但值为String的变量的值转换为Date类型
二,EL表达式
- 认识EL
EL(Expression Language) 是为了使JSP写起来更加简单。表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法,让Jsp的代码更加简化。
- EL中的标识符
为了避免出现非法的标识符,在定义标识符时还需要遵循以下规范。
• 不能以数字开头。
• 不能是EL中的保留字,如and、or、gt。
• 不能是EL隐式对象,如pageContext。
• 不能包含单引号(’)、双引号(")、减号(-)和正斜杠(/)等特殊字符。
- EL中的保留字
保留字就是编程语言里事先定义好并赋予了特殊含义的单词。和其他语言一样,EL 表达式中也定义了许多保留字,如false、not等,接下来就列举EL中所有的保留字,具体如下。
and eq gt true instanceofor
or ne le false empty
not lt ge null div mod
- EL中的变量
L表达式中的变量就是一个基本的存储单元,EL表达式可以将变量映射到一个对象上,具体示例如下所示。
${product}
在上述示例中,product就是一个变量。EL表达式中的变量不用事先定义就可以直接使用,例如,表达式${product}就可以访问变量product的值。
5.EL中的常量
1.布尔常量
true、false
2.整型常量
与 Java 中的十进制的整型常量相同,它的取值范围是 Java 语言中定义的常量Long.MIN_VALUE到Long.MAX_VALUE之间,即(−2)63与263−1之间的整数。
3.浮点数常量
浮点数常量用整数部分加小数部分表示,也可以用指数形式表示,例如,1.2E4和1.2都是合法的浮点数常量。它的取值范围是 Java 语言中定义的常量 Double.MIN_VALUE 到Double.MAX_VALUE之间,即4.9E-324~1.8E308之间的浮点数。
4.字符串常量
字符串常量是用单引号或双引号引起来的一连串字符。由于字符串常量需要用单引号或双引号引起来,所以,字符串本身包含的单引号或双引号需要用反斜杠(\)进行转义,即用“’”表示字面意义上的单引号,用“"”表示字面意义上的双引号。如果字符串本身包含反斜杠(\),也要进行转义,即用“\”表示字面意义上的一个反斜杠。
要注意的是,只有字符串常量用单引号引起来时,字符串本身包含的单引号才需要进行转义,而双引号不必进行转义;只有字符串常量用双引号引起来时,字符串本身包含的双引号才需要进行转义,而单引号不必转义,例如"ab’4c"d5\e"表示的字符串是ab’4c"d5\e。
null常用于表示变量应用的对象为空。
EL中的运算符
1.点运算符
(.)EL 表达式中的点运算符,用于访问 JSP 页面中某些对象的属性,如 JavaBean 对象、List集合、Array数组等,其语法格式如下。
c
u
s
t
o
m
e
r
.
n
a
m
e
在
上
述
语
法
格
式
中
,
表
达
式
{customer.name} 在上述语法格式中,表达式
customer.name在上述语法格式中,表达式{customer.name}中点运算符的作用就是访问customer对象中的name属性。
2.方括号运算符
(.)EL表达式中的方括号运算符与点运算符的功能相同,都用于访问JSP页面中某些对象的属性。当获取的属性名中包含一些特殊符号,如“-”或“?”等并非字母或数字的符号,就只能使用方括号运算符来访问该属性,其语法格式如下。${user[“My-Name”]}需要注意的是,在访问对象的属性时,通常情况都会使用点运算符作为简单的写法。但实际上,方括号运算符比点运算符应用更广泛。接下来就对比一下这两种运算符在实际开发中的应用,具体如下。
• 点运算符和方括号运算符在某种情况下可以互换,如${student.name}等价于${student[“name”]}。
• 方括号运算符还可以访问List集合或数组中指定索引的某个元素,如表达式${users[0]}用于访问集合或数组中第1个元素。在这种情况下,只能使用方括号运算符,而不能使用点运算符。
• 方括号运算符和点运算符可以相互结合使用,例如,表达式${users[0].userName}可以访问集合或数组中的第1个元素的userName属性。
3.算术运算符
EL 表达式中的算术运算符用于对整数和浮点数的值进行算术运算。使用这些算术运算符可以非常方便地在JSP页面进行算术运算,并且可以简化页面的代码量。
三,JSTL
认识JSTL
JSTL(Java server pages standarded tag library,即JSP标准标签库)是由JCP(Java community Proces)所制定的标准规范,它主要提供给Java Web开发人员一个标准通用的标签库,并由Apache的Jakarta小组来维护。开发人员可以利用这些标签取代JSP页面上的Java代码,从而提高程序的可读性,降低程序的维护难度。