1. 首页 > 儿童教育

简述OGNL在框架中的作用? 简述orm框架的原理,列举几个常见的orm框架

EL表达式主要功能:用于访pageContext,request,session,application范围内存储的数据。

OGNL不仅可以访问数据,还具有访问方式,对汇总进行操作等功能。

OGNL是啥子?

Object Graphics Navigation Language 对象图导航语言。主要作用是对一些复杂对象的属性与方式进行访问。

OGNL技术可以独立运用,封装在ognl.jar开发包中。

2)OGNL工作原理

OGNL工具由三部分构成,分别是

a. OGNL引擎:负责解释执行OGNL表达式,按表达式区root或map区域寻找数据。

b. Root根对象区域:访问该区域数据OGNL表达式简洁方便。适合放置访问频繁的对象元素。

c. Map对象存储区 :访问该区域需要运用“#key”访问。适合放置访问不频繁的对象元素。

运用时,向OGNL引擎指定壹个表达式,该引擎根据表达式去Root区或Map区访问对象的属性或方式。

*3)OGNL表达式语法

a.访问Root对象某个简单属性

表达式: "属性名"

b.访问Root对象某个数组或者List汇总

表达式:"属性名[0]"

c.访问Root对象某个Map汇总

表达式:"属性名.key"或者"属性名['key']"

d.访问Root对象某个复合类型属性address

表达式: "address.子属性"

e.访问Root对象某个复杂属性 List addresses

表达式:"addresses[0].子属性"

f.访问Root对象的某个属性的方式

表达式:"属性名.方式()"

g.支持Java中的表达式与运算符

h.定义壹个List常量

表达式:{"A","B","C"}

i.定义壹个Map常量

表达式:#{"key1":value1,"key2":value2}

j.访问静态常量或方式

表达式:"@包名.类型@常量名或方式"

上述语法如果访问Map区域一样运用,只要注意追加"#key".

el表达式是啥子?

一种简单的计算规则,用于向标签的属性赋值,今年,也可以直接输出。

(1)访问bean的属性。

方法一:

${user.name} : 容器会依次从pageContext,request,session,application查找绑订名称为"user"的对象(即调用getAttribute方式),找到后,调用该对象的getName方式并输出。如果值为null,会转换成""输出;

另外,如果找差点该对象,也会输出""。

如果要指定查找范围,可以运用pageScope,requestScope,sessionScope,applicationScope,比如:${sessionScope.user.name}

方法二:

${user["name"]}

这种方法允许[]里出现变量或者序号(从0最初,用来访问数组中的元素)

(2)进行一些简单的计算,计算结果可以直接输出,也可以向标签的属性赋值。

1)算术运算: "+","-","*","/","%"。注意"+"只能进行加法操作,不能进行连接操作。

2)关系运算:">",">=","