听妈给您讲点事儿……el 能够隐含对象(就是好直接访问的)看到一个女生旁边有空位坐了过去。

本人真是日了动物园了——我倒及了相依为命这长长的未归路。

el (expression language)

恶榴莲,因为她臭;不思量以及你做情人,因为你喜爱榴莲;你喜爱榴莲,就代表你自私,不呢大家着想。

即使打那天起,我妈、我爸、我基友,甚至自己三且六老婆婆我八竿子都打不至干的左邻右舍家之六阿姨的小姨子家的那么有,忽然跟吃了药一样,像是脱了缰绳的野狗似(请自行脑补画面)的跑来寻觅着自家,以好心肠实则生耍流氓为名,然后彻底从乱我原先清闲安逸的存……

el 基础操作符

图片 1

至于具体的……这事得从头说起。

图片 2

01

那天,我莫造成谁没有招谁地下班回家,一打开门,结果自己娘死反常态地动至我根据我造成了招其亲手:“儿砸,回来呀?来,坐这,听妈给你讲点事儿……”

el 能够隐含对象(就是得直接访问的)

该开开心心的平等上,拿到了驾照,去逛逛沃尔玛买点东西到底给协调的赏。

刚巧所谓“无事献殷勤非奸即盗”,我心坎一严肃,想咱妈怎么今儿只改变了脾气。换做先,她一定是那种完全看在韩剧然后针对着电视端的玄彬(对没错正是她底本命)流哈喇子,偶尔指在那帅哥说“儿子而要出玄彬一半辣么帅就好哪”然后用我累到手一连接那种。不过我转念又想我近年相像也从来不发什么事情,于是抱在大不了双重让看脸的老妈品评一番之心绪,蹭蹭蹭跑去蹲她面前。

图片 3

同样入沃尔玛卖水果专区,看到榴莲,眼不能够更换,立马将了一样稍盒放入购物车。天喻我产生差不多善榴莲,就比如猫爱吃鱼,狗爱啃骨头,奥特曼爱打小怪兽。

有道是“伸手不起笑脸人”,我笑嘻嘻地集合上前面失去说:“妈,啥事啊?”

el 的少种植下办法,第二种恍若在jsp中从不呀用,主要用以jsf

以在榴莲,满足地移动来沃尔玛,上了公交车。看到一个女生旁边有空位坐了千古,一分钟未交,旁边的女生戴上口罩,把条转向其他一面。

意想不到我妈其他的讲话不说,就是笑嘻嘻地审视着自家:“走近点走近点,让妈再睹你。”

图片 4

老三分钟过去了,前面的女生转移阵地,移到另外职位去了。最初我觉得没什么,也非知道产生了哟,下车后,听到后面有人窃窃私语:“薰死我了,真是弄不懂有的人头怎么这么自私,买只榴莲还为公交,折磨别人什么,我马上辈子都和容易吃榴莲的口游戏无交均等块去,不能够经受榴莲那味道……”

自家叹了丁暴,亏自己还当想她是无是别有所图……难道咱妈对自己颜值的打击技能又提升了非化?以前是下等的直接数得,现在易高阶的奚落了?

el能够访问的靶子(javaBean , 类集, 枚举 , 隐含对象)

本身拿榴莲使劲向口袋里填了塞,默默低着头走丢了。

结果妈捧在我的体面,“啧啧”两声,装模做样地叹了语气:“唉……”

图片 5

图片 6

多么温柔却同时多有重的均等望好叹呀,那语气、那情感,简直催人泪下……要换你乃一贯也觉得温馨罪孽深重滔天十恶不赦,立马要发作伏罪状心怀愧疚痛哭流涕。

在oracle官方网站上记录下来的片段本人当中的事物:

02

“我知道自家颜值低……”

1. 
${customer}
The web container evaluates the variable that appears in an expression
by looking up its value according to the behavior of
PageContext.findAttribute(String), where the String argument is the name
of the variable. For example, when evaluating the expression
${customer}, the container will
look for customer in the page, request, session, and application scopes
and will return its value. If customer is not found, a null value is
returned.

归来寝室,拿出榴莲开吃。

左右自己便即刻领悟了,于是自己吃它们铺台阶下。我猜想自己随即老妈下一刻必会这样说:“你而是肉眼更大点,鼻子又大点,下附上再尖点,皮肤还白点……唉,要无自己发生钱送您去思密达的国整容怎么样?”

 web容器在处理这段代码是后台使用的凡
PageContext.findAttribute(String)方法,该方式的概念如下:

相同室友回来了:“啊,你同时以吃榴莲……好讨厌呀”

而老妈毕竟是老妈,她以接来说的那段话让自己若让三千匹野猪踩了同样风中烂……以至于才来矣新生层层哭笑不得的事件。

图片 7

并且平等室友回来了:“天啦,满寝室都是这味道,我叫不了……”

它与自家说:“我儿砸怎么就这样美好呢!”

拖欠法是纸上谈兵类PageContext继承抽象类JspContext的。

自家回答:“不啊,我觉得那个香之呀,要无你闻闻?”
我把当前的榴莲立马凑到她面前。

这词话一样说出,我当那时候的发比我之一个金牛所朋友(@粟冰箱变成白风筝飘走了,我绝对没有说是你)经常用来感慨的那么句话:嘤嘤嘤嘤嘤嘤嘤……

此点子的概念和方红色字体的叙述基本相同,就是说会仍page ->
request -> session -> application
的之顺序搜寻customer属性,如果生返回,否者返回null。

它不久捂住鼻子,退至一面去:“臭死了,你发出呢我们着想过么?”

前吧说了,今年本人老吴正好二十四,正处在一个杀神秘之岁。而重新微妙的凡自家之丰富相——有心上人写自己是虎背熊腰形容粗暴,放哪都像是刚刚打劫了银行的强暴或恐怖分子。作为一个以十七年份之早晚便于同龄人叫做叔叔的自我,一向都是格外有自知之明之很上向合法公民。要是有人在路上看到自身以后报警,我还看正常;但要是有人叫我帅哥,我定位得二话不说拿鞋底抽他女儿的:“你乱啊?”

 

旁一样室友赶紧附和到:“就是就是,你都未呢我们着想下。你看您这么自私,我们都非思量跟你开恋人了。真心忍受不了榴莲的含意啊……”

唯独当时句话还是自从自娘嘴里说下的……对己而言,心里那个复杂,其复杂程度不下让英语四层无了的本身采购进口口香糖拆起来才意识里面凡是致避孕套。

2. 

“呵呵” 我哭笑不得的欢笑了笑,收回伸出手的榴莲。

假如我妈说得了这句话之后,我不怕认为我必须得说接触什么了。但接下去的政工完全可以据此“诡异”两独字来写。

 

自了解就只是室友的同样句子无心玩笑话,我可沦为了思想。以怪条件下,做自己爱的从业,吃喜欢的食,满足了和睦不怕是自私么?

“那个,妈?”

Where Value Expressions Can Be Used
Value expressions using the ${} delimiters can be used in

暑假在广东跟大人阿姨用了即两只月,二姑知道自家特别喜欢吃榴莲,期间给自家采购了季浅全体的榴莲。

“嗯?”

Static text

忆起那时候,自己一个口以小吃的津津有味,阿姨却是麻烦忍受这臭,催促我赶紧吃罢把盖子丢出去

“您患了?”

Any standard or custom tag
attribute that can accept an expression

图片 8

讲真,我顿时首先直觉是觉得我妈脑袋烧糊涂了,我还拿手放她额头上。

The value of an expression in static text is computed and inserted into
the current output. Here is an example of an expression embedded in
static text:

03

自己母亲拍起来我推广她额头上的手:“说啊傻话呢。”

<some:tag>
some text ${expr} some
text
</some:tag>
If the static text appears in a tag body, note that an expression will
not be evaluated if the body is declared to be tagdependent.

榴莲属于热性水果,每天最好好食用不跳100克。一律就榴莲果肉遭遇含有淀粉11%,糖分13%,蛋白质3%,还有脂肪、维生素C以及钙、铁、磷等多种微量元素,营养相当丰富,在民间有“一特榴莲三单单鸡”的布道。

“你今儿个要命怪……你确定你儿子貌若潘安?但要是说吧,我马上皮肤黑吧。”

Lvalue expressions can be used only in tag attributes that can accept
lvalue expressions.

营养来价,却为不可贪吃,我每天最多啊只好吃同稍片,差不多要三交四天才会将一整个榴莲消灭掉。

“黑色那给正常,你看香港那么男明星,微博上养狗的百般,叫马建国(此处应@回忆专用小马甲)那个。”

A tag attribute value using either an rvalue or lvalue expression can be
set in the following ways:

阿姨自是难以忍受,每天捏着鼻子进进出出,甚是恶榴莲这讨人讨厌的意味。

“那是古天乐……而且他不养狗。还有本人顿时单眼皮也……”

With a single expression construct:

老是姑提着榴莲来我家,我对姑说:“姑,下次变动买了,就自身一个总人口吃,我吧吃不了有点。”

“单眼皮好,现在韩国那里都流行单眼皮帅哥,你看深‘论’……”

<some:tag
value=”${expr}”/>
<another:tag
value=”#{expr}”/>
These expressions are evaluated, and the result is converted to the
attribute’s expected type.

姑娘也是满不在意地游说:“有何,慢慢吃啊,你喜爱就市来吃。”

“是‘Rain’。”我连忙帮她捋顺,“可家人口高马大身材好。”

With one or more expressions separated or surrounded by text:

每当第三蹩脚姑给自己请了榴莲拿到人家走后,爸爸黑着脸质问我:“你顿时倒是吃安逸了,你发出纪念了你姑赚钱生多辛苦也?一个榴莲就是一百基本上,在怪太阳下挣钱很好赚钱是吧?

“你不呢泡健身房泡得虎背熊腰么?”

<some:tag
value=”some${expr}${expr}text${expr}”/>
<another:tag
value=”some#{expr}#{expr}text#{expr}”/>
These kinds of expression, called composite expressions, are evaluated
from left to right. Each expression embedded in the composite expression
is converted to a String and then concatenated with any intervening
text. The resulting String is then converted to the attribute’s expected
type.

本人陷入了沉默,低下头使劲捏了卡手中带刺的榴莲,恨不得立即扔出来就一生都变再说自家好吃榴莲了。

自身插嘴问:“人高马大和虎背熊腰好像不等同吧?”

但看起颜色的许,
第一只说el可以还平凡文书及作标签的值使用,第二单跟老三单颜色字分别吗于一般文书以及当标签属性的实例。第四个代表el可以跟仿外搭配使用,其中的#自家还未亮在jsp中生出什么用。

本人只是按照人提了千篇一律词我好吃榴莲,二姑也记在了心上,给自己买了一个并且一个榴莲,大热天她好于工地及行事也是连一瓶冰冻水也未舍得打来喝。

“是不同等呀,反正你就是是优秀。”

 

关押吧,我好吃榴莲成了平栽罪了。

我:“……”

ognl

图片 9

“你说自家儿子这样好,怎么会并未女性对象也?”

 

04

我:“……”

  1. 要害出口了ognl的调用链,该调用链只能用来get值,不可知set值。

其实对于榴莲,最初步自我呢是免可知承受的,第一次等吃榴莲放上嘴里一丁点果肉就立马吐出来,跑去洗。

“所以自己的同事们——也就是那些关注而的父兄姐姐叔叔阿姨,经过和自己同协商后,决定为你推荐一个姑娘。”

The fundamental unit of an OGNL expression is the navigation chain,
usually just called “chain.”

非克承受爱吃榴莲的丁,那时候实在麻烦想象就世界上为何会发出这么丑的果品还被称“水果的王”,竟还有人口吃得下来。

我:“……”

 name.toCharArray()[0].numericValue.toString()

新兴,慢慢长大了,也初步接受了榴莲,爱上了榴莲。小儿,什么好吃我虽基本上吃点;长大了,什么好自己就是大多吃。

“别老是休提呀,你说说你的想法嘛。”我妈摆有同样抱很慈祥很亲和的态势,“我们以未是逼近着你如果去同居家走,只是让您一个选择的机遇嘛。万一若欣赏上了那还无是一石数鸟类皆大欢喜?”

Note that this example can only be used to get a value

此前未喜吃胡萝卜,长大了晓胡萝卜含有多种维生素和长的胡萝卜素,具有降血压,减少冠心病,增强免疫力,有益眼睛,防便秘,美容养颜以及强身健体的职能,也开始喜欢上胡萝卜。

我目瞪口呆,好半上才休息了精来:“感情还起选择什么?”

 

无能够因为其口味奇特就未爱好食用,即使好不欣赏,也足以适量的食用部分,榴莲也这样。

“对呀,我们且是最为深限度为你考虑……退一万步讲,你要是非欣赏,你吧足以拒绝嘛——就当交个朋友撒。”

 2. ognl勿克采用setValue()这样会招InappropriateExpressionException
异常抛出

易榴莲的总人口以为吃榴莲是一致栽享受,绵密顺滑的口感,留香齿间,入口即化,酸软味甜,甚是好吃。

自我简直起腰(记得蹲了老半天了),说:“那自己选择拒绝……您呀就不错看韩剧,我换身衣服去。”然而未料到自家老娘动作迅速,一将拉停自己:“你尽管无让好一点机?”

from an object, not to set a value.Passing the above expression to the
Ognl.setValue() method would cause an InappropriateExpressionException
to be thrown, because the last link in the chain is neither a property
name nor an array index.

无轻榴莲的丁看榴莲简直是毒害人污染空气的“罪魁祸首”,闻都未思闻一下,看见榴莲绕道而行,更别提尝一人口了。

自身耸耸肩说:“我立是勿为协调引麻烦的会。”

  1. ognl 的几栽属性调用方式

偶尔我在惦记,要是自我在公交及或公共场合直接把榴莲拿出来吃,会不见面为哄下车赶走呢?没几单人口吓眼相待吧,估计还得恶狠狠地十分盯在自己。

“唉,要怎么说您。”我母亲肯定起点头疼了,“你就非也公妈考虑考虑?”

 For example, OGNL internally treats the “array.length” expression
exactly the same as this expression: array[“length”] And this
expression would have the same result (though not the same internal
form):  array[“len” + “gth”]

终了,我非可知如此自私,不然真会没对象之。

“考虑啥?”

 

【怀左同学做训练第二次作业】

“你考虑什么,你妈妈自己拖儿带女三十年,工作达兢兢业业不发错误,社交上交游广阔不分差相关,一向为实力说话,以人说事。你而拒绝了,让自身——的那么帮同事跟爱人,面子上怎么去得开呀?”

  1. ognl同时可调用方法,当然前提是该办法以ognl中,方法参数用逗号隔开。

我:“……”

5.
以逗号后面长括号,在括号中可本着前方的对象值进行引用,例如下面的是事例,#this表示listeners.size()的值。 

“再说什么,你今年还二十四了。这是呀年龄?是吃二十五年度饭的岁!从法律意义上来讲都过晚婚的齿,可立即几乎年自己及公父看来看去,不但没有见着您带来个女儿回家,连个……”

listeners.size().(#this > 100? 2*#this : 20+#this)

自我连忙辩解:“我带了爱人(嗯男♂人)回家之!去年过年那会儿你忘记了?”

 

她:“……”

  1. 对变量赋值,与Java类似,如下例,#应当和见仁见智范围之变量有关

然后我意识老娘的脸色微微黑,于是立即改口说:“哎呀我随即不是直当找么?就是人家看无达标你儿子……”

To assign a value to a variable explicitly, simply write an assignment
statement with a variable reference on the left-hand side:

“什么别人不上,分明就是是自家眼光高。你是免是免得找个长得与天仙似的姑娘你才满意呀?”我妈这暴脾气,都起打几威胁了,顺带喷我一样面子唾沫渣子。

#var = 99

“也不曾那么夸张,”我抓挠头,“其实我之渴求啊非常简短啊。”

 

“你啊意思?”

  1. 利用括号改变计算次序以及包装计算单元,方法类似于Java

“眼缘呗,有句话怎么说的:‘王八看绿豆,看对眼。’”

Parenthetical Expressions As you would expect, an expression enclosed
in parentheses is evaluated as a unit, separately from any surrounding
operators. This can be used to force an evaluation order different from
the one that would be implied by OGNL operator precedences. It is also
the only way to use the comma operator in a method argument.

“你简直就是是敷衍!”我精明之老妈很严肃地拆过了自我的把戏。

7.
于逗号后面使用括号,下面的当即段代码会先搜寻headline.parent属性,然后执行ensureLoaded()方法,然后回parent属性的name属性值

“你还说没逼着自我?”老妈聪慧之崽自己死委屈地指出了它们底含。

headline.parent.(ensureLoaded(), name)

“好吧,你说眼缘对吧?”老妈忽然语气一变动,重新回升了那种和蔼的真容,“大浪淘沙,不多挑挑多省怎么摸得交您针对眼缘的人数?而且你不是直接抱怨工作之后没什么新的冤家么?挑对象不化还会挑朋友——多好之会啊,都布置你前面了。”

traverses through the headline and parent properties,ensures that the
parent is loaded and then returns (or sets) the parent’s name.

本人犹豫了瞬间。

 

可是其同时让本人上上同刀片:“而且自都已经把你的身高家世学历爱好照片这些东西还泛给每户了……”

8.
一直以逗号,不以括号的测算次序,下面这段代码和上面的切近,不过量下了默认的目标作为上下文

本身心惊肉跳,忽然又想开还吓自己的微信微博QQ空间至少算保住了,也无去了自家黑历史暴露太多之窘迫……

Top-level expressions can also be chained in this way.The result of the
expression is the right-most expression element.

下一场就是放任我可爱极的老妈说:“对了还有你那些微信什么的,顺便一起还为了……”

ensureLoaded(), name

本人扑通一声摔地上。

This will call ensureLoaded() on the root object, then get the name
property of the root object as the result of the expression.

亲娘咧。

 

我真倒霉,真的。居然卷进了这样一桩麻烦事儿中。

9.
以花括号定义list对象,下面这表达式是用以判断name是匪是当null或者Untitiled,我怀疑应该是事先拿name封装成list

从我母亲被我绝望摊牌以后,不用继续说啊自己就感到好早就陷进一种前所未有的窘况了。相亲——我虽然不反对相爱而我反对相亲呀。那感觉就是比如是自家被我妈包装得精细讨巧的货物,被所谓的那些哥哥姐姐叔叔阿姨三姑六阿婆什么的明码标价,最后给小心翼翼摆上货架等正别人挑挑选选、翻来覆去、指指戳戳地猥亵(不是玩♂弄呢不是玩♀弄),别提多变化回了。

name in { null,”Untitled” }

对老妈的杀招,我到底无法了,只好自己苦苦哀求老妈大人:“行了执行了卿还开了尚征求自己吗意见?不就是是并行亲么,我诱惑了!”

 

“别说得那恐怖,也即表现见面认认人……对了您加以她微信没有?”

  1.  ognl定义原始类型的数组

自挥挥手,哀怨无比地走(爬)回好房间:“别管我自怀念静……”

new int[] { 1, 2, 3 }

“静静不是您那前女性友么?怎么你们又产生挂钩啦?”

new int[5]

再次扑通。

  1.  定义map

“对了……”

#{ “foo” : “foo value”, “bar” : “bar value” }

自家改变过身去,看见我们老妈抬头想了相思,然后说:“当然你父啊应了您而交了女对象他全程赞助资金……”

  1.  使用ognl总体历Collection类型的目标,其中的objects表示一个类集对象,
    #this代表遍历的眼前元素,然后按照表达式对各国一个因素进行测算,然后回来计算后获的list元素,这在ognl官网上称作projecting

自家转过身,非常严峻非常义正词严地报告他:“作为知情感恩报恩之男女,体谅父母良苦用心是当的,妈你怎么能于大人全程赞助也?——全程就终于了,全资就改为!”

objects.{ #this instanceof String ? #this :#this.toString()}

作业就是这样。

 

于是第一虽说接近故事就是这个进行了。

  1.  使用ognl从类集对象吃抽取产生部分要素,这当ognl官方网站上名selection
    ,下面是表达式从listeners类集对象吃抽取产生那些是ActionListener的因素

当故事刚刚展开的时刻我认为出必不可少先整体地介绍一下自家好。我姓吴,名大国(真名不可知暴露!)。在自我十七寒暑之前我因此这名字曾经很老实没病没灾地过了诸多年,但随着前文提到了的那么次给同龄小萝莉被蜀黍(申明俺不是萝莉控)的那么次事件在自我朋友同校友中流传后,我就光荣地获取了初的绰号:老吴。

listeners.{? #this instanceof ActionListener}

本年自二十四年度。二十四年度之时节你以论及啥?反正自己就掌握家莎翁已经改为了略微有声望的演员、剧作家,而牛顿早于同一年前发现了万来引力,混得极度差之微布什起码也当得克萨斯国民警卫队很喜悦地从头着战斗机……而自己,碌碌无为地需要在同寒政府自行,成了同样峰公务猿(和顺序猿一样,属于指哪起啊没人权那种,所以量词务必使用头)。

 

而是当一个原乐天知命之人头,碌碌无为对自家吧根本就未算是吗。像自己这样的口吧,生活态度基本上是属如果您于本人支点愿意失去挑地球,给我炸弹我能够去炸五斗大楼,但要是你叫自身一个瓶子也乐意失去打点油。所谓舂米便舂米,撑船不畏撑船,整个人特随遇而安,不论被凿安排什么工作且是主任之身上膏药——哪儿疼往何处贴。

应用ognl从类集对象吃筛选产生第一只符合的目标,然后用拖欠对象封装成List返回,原始的做法是listeners.{?
true
}[0],但是这种方法是cumbersome(笨拙的),因为要是没有匹配到其它结果或者listeners.{?
true}是拖欠的,那么会抛出ArrayIndexOutOfBoundsException异常。使用下这种格式会将率先独相当的素作为一个list对象回来,如果没匹配到其它因素虽然会回去一个空list。

本身是朝机关一个不起眼的小家并,当然其实我还有一个工作是网上一个稍起眼的签约写手,写了几许年免费用去还尚未人看那种。我呢非是没做过我营销,有一致不良我拿温馨呕心沥血炮制数月的小说用给本人之好爱人看,谁知数日以后他还主动跑来提问我还有没有出。当时自己大激动啊好兴奋啊,觉着未来光明人生有望不再是可望。然后就外以及我说:“以后您要还描绘记得吃自家多留下几份,自于一押而勾勒的那些个小说本身就算昏昏欲睡,睡着的进度特别快质量特别好……”

objects.{^ #this instanceof String }

因此我大约就是这么个状态,我每天白天家居办公室晚上码文字都无所事事,没悟出一有从即激起非常了。我他娘的甚至以斯时刻遇到上了亲密这种壕无人性(壕同毫,出自《吴氏辞典》,主编老吴)的事体,对于向来对斯并未任何准备的我简直是玩玩那个发了。

  1.  相同获取最后一个匹配的因素

就是于本人正有些思想准备的早晚,老妈给本人塞来了第一单恩爱对象。

objects.{$ #this instanceof String }

因我妈真实可靠(大雾)的说教,那女——在是我们简称A,A姑娘个子大概发生相同米六五(说这话的时节我娘两眼睛放就地游说但符合您同一米八三的大个子),个子特别高挑,一般蓄一峰要瀑长发,当然最好要之是以下简单沾:

 

一样凡这女儿当我们市上农商银行工作。

  1. 运ognl调用构造方法必须采取类的姓名

购入上诶,听起瞬间尽管上有没有来?比自己这瞎小小一个区里面的公务猿风光多矣;银行诶,听起来瞬间便底气十足有无产生?反正要于我立即瞎小小一个区中间的公务猿有钱差不多矣……

You can create new objects as in Java, with the new operator. One
difference is that you must specify the fully qualified class name for
classes other than those in the java.lang package.

仲是自个儿娘特喜欢这女(这是重大的重要性)。

 

尽管是者女,在探望真人前特凭借一两摆设照片就是得了我妈的慈(我花了全二十四年还还尚无),很是争气。可惜我镇是认为就女儿不够漂亮,结果差点没有给我妈举起老拳暴扁一搁浅。她说而就口咋这么呢怎么老看脸去了还是如此浅?我力排众议说不看脸还圈什么,就到底打影及也看不出来她个子多好云云……然后在我妈的怒视下自家还要随即改口说除脸还会看什么,看家世人品学历?我妈说看就幅样貌,就懂得凡是独勤奋人品良好的妞儿。我大吃一惊地说这些你还能够从照片里看下?我记忆她于像里除了剪刀手卖萌、淑女范摆谱以外也从没啥了呀?我母亲白我一样肉眼,说反正说了公吗无了解。我说成,那咱们换一个话题,你觉得它们漂亮?我妈说而免以为?我说自家当咱们审美之间有在巨大的界线这不是时间和修复就能够弥补的……然后我妈指了指电视及之玄彬(为毛每次都是外?我恨他!)又指指自己,说人家配你而还是赚钱到了,要敢再耍嘴皮子你就是急忙照照镜子去……(以上文字节选自《家庭事务选集》第N回第N回:大战老妈的常备(365),老吴含泪著作)。

  1. 行使ognl调用静态方法,这个leave out class 是什么意思?

眼见没瞧见没,这即是母咧!

 If you leave out class, it defaults to java.lang.Math,to make it easier
to call min and max methods. If you specify the class, you must give the
fully qualified

而是那时候我还从未起我妈的打击着(其实自己确实去按了镜子)缓过强来,显得呆头呆脑,对这事儿,我小着头看正在手机及长期不回之拖欠信息栏说:“我可算仁至义尽矣,好友也加了,招呼吗起了,可那姑娘全体三天了还无被自家单转信儿。”

 name.  

老妈依然坐那儿看正在她底玄彬,头也非扭转地游说:“为什么吧?”

@class@method(args)

自瀑布汗:“你问问我问话哪个去?”

  1.  获取静态属性

其说:“你不是敷衍我?”

 @class@field

我:“……”

 

先就和你们说了本人很倒霉,你几常常展现了一样统故事之阳主角是从头到尾都展现不至女主角的?什么您说从相片及?这分别太怪了,你想,一凡是以别有用心的夜欣赏波多野、樱井、松岛,二凡寻觅个你嗜的幼女在别有用心的晚上欣赏波多野、樱井、松岛,然后真人实践,换你你觉得啊种更值?

18.
 表达式的精打细算,下面是表达式会将30用作BigInteger放入root对象(应该是value
stack)中

当然以上这些讲话万万不能跟我老妈提起一星少于以免她清醒着好儿不再天真纯洁(读者反问:你清白了?)。

#fact(30H)

自不得不对己老妈说:“你切莫认为完全没打啊?”

 

老妈愣了转,抬头问我:“哪没玩?这和它无主动对有提到呢?”

  1.  伪Lambda表达式(Pseudo-Lambda Expressions)

拿自家欺负得,这拨话还带来主动不积极?我大声说:“总不可能于自己随时腆着脸对在空气说而好吧?”

#fact = :[#this<=1? 1 : #this*#fact(#this-1)], #fact(30H)

我娘恍然大悟:“哦,那若受它发短信呗……”

The lambda expression is everything inside the brackets. The #this
variable holds the argument to the expression, which is initially 30H,
and is then one less for each successive call to the expression.

自身瞪着其,她为将眼睛瞟我。房间里好半上没动静,过了同会面就听我妈继续游说:“不是让你发短信么……当然要打电话也变为。啥时候你变这么强悍了?”我照平住自己就要崩溃的衷心说:“发短信就直接的了,好比敲对方的宗说自己只是免得以进去……”我妈妈看在自身:“那打电话算吗?”我雕半天:“打电话就好比连家还不讹直接一下踹开说大进来了(那一刻本人杀钦佩自己这样快,打而顺手拈来)……”谁知老妈忽然暂停了正在播放的韩剧,沉思了一会儿游说:“实在是如此吗没有道,毕竟也未克冷脸贴热屁股……”我十分巴结地连连点头,态度跟孙子似的(我妈:你切莫我儿子为,怎么还要降辈分了?):“老妈英明神武千秋万代表一统江湖,我对你的景仰犹如滔滔江水……”没想自己妈压根没吃就等同拟,立马插嘴说:“要审这么我们就是易一个呗,这个女儿生我们还有其它一个……”

lambda表达式的持有情节都以有方括号受,#this变量为lambda传递进参数fact的价,这个fact的价当末端进行了初始化为30H。

自家震惊,合在自身老谋深算的母早产生对策来在?不过当下到底吗?对象上名单?云备胎之计?儿媳妇儿补了计划?

  1.  Connection 的伪属性

自己头怪如打,我构思乱,我自身自身自身……我掌握在我妈的手:“又是那谁哪个哪个?市上的区里的?是干部还是老师?长发还是短发?萝莉还是人妻(大雾)?……”

图片 10

自娘意味深长看本身平双眼:“你想要啊种档次?”

  1.  在标点符号上和Java的差

自哪怕跟于推广上开水的青蛙一样,彻底爆了!还一蹦三尺高!我关停我妈悲愤地游说:“能不能够变化为自己介绍了,要无您行行好将那些叔叔阿姨三姑六老婆婆统统打发走算了……”结果自己妈摊手:“不行呀我都和她俩确保了游说自己儿子特乐意,觉得小伙子就是欠相互关系关系,走动走动,对了自己立简单天将您的联系方式都被他们了——”

,(comma)

“都让了?这片天?我本人本人本人本人……”

  逗号用于分开两独独立的表达式,逗号后面的雅值是该逗号表达式的返值。比如ensureLoaded(),
name

自家终于受不了了,我像崩溃掉的尼采同一挥舞着双臂,满含热泪地像是吸引街上的那么匹马一样一把吸引我母亲的手臂,情绪不能够和谐到还不知该从何说起。我最终为只能重复认命(咦我干吗要说“再次”),满怀委屈地舍身忘死地投入到了光辉的码字工作备受去。古人云诗以言志,我不怕想着靠写点东西抚慰一下我那么受伤的心灵——顺便试试我充分朋友看我的许睡得赶紧之章程是匪是有效。

{}(curly braces)

结果我前面下刚抬起来就是听见我妈在后面使唤:

  用于创造list对象,比如{ null, true, false }

“对了,另外那姑娘的素材我正要传你手机上了,你记得去翻一翻……”

in/not in

自身再次扑通。

  判断值是否属有集合,例如name in {null,”Untitled”} || name

 

  1.  ognl能够推行隐式的强制类型转换,具体规则如下:

Interpreting Objects as Booleans

  Any object can be used where a boolean is required. OGNL interprets
objects as booleans like this:

  1) If the object is a Boolean, its value is extracted and returned;

  2) If the object is a Number, its double-precision floating-point
value is compared with zero; non-zero is treated as true, zero as false;

  3) If the object is a Character, its boolean value is true if and
only if its char value is non-zero;

  Otherwise, its boolean value is true if and only if it is non-null.

Interpreting Objects as Numbers

  Numerical operators try to treat their arguments as numbers. The
basic primitive-type wrapper classes (Integer, Double, and so on,
including Character   and Boolean, which are treated as integers), and
the “big” numeric classes from the java.math package (BigInteger and
BigDecimal), are recognized as    special numeric types. Given an
object of some other class, OGNL tries to parse the object’s string
value as a number.Numerical operators that take two   arguments use
the following algorithm to decide what type the result should be. The
type of the actual result may be wider, if the result does not fit
  in the given type.

  1)  If both arguments are of the same type, the result will be of
the same type if possible;

  2)  If either argument is not of a recognized numeric class, it will
be treated as if it was a Double for the rest of this algorithm;

  3)  If both arguments are approximations to real numbers (Float,
Double, or BigDecimal), the result will be the wider type;

  4)  If both arguments are integers (Boolean, Byte, Character, Short,
Integer, Long, or BigInteger), the result will be the wider type;

    5)  If one argument is a real type and the other an integer type,
the result will be the real type if the integer is narrower than “int”;
BigDecimal if the       integer is BigInteger; or the wider of the
real type and Double otherwise.

Interpreting Objects as Integers

   Operators that work only on integers, like the bit-shifting
operators, treat their arguments as numbers, except that BigDecimals and
BigIntegers are   operated on as BigIntegers and all other kinds of
numbers are operated on as Longs. For the BigInteger case, the result of
these operators remains a   BigInteger; for the Long case, the result
is expressed as the same type of the arguments, if it fits, or as a Long
otherwise.

Interpreting Objects as Collections

  The projection and selection operators (e1.{e2} and e1.{?e2}), and
the in operator, all treat one of their arguments as a collection and
walk it. This is   done differently depending on the class of the
argument:

  1) Java arrays are walked from front to back;

  2) Members of java.util.Collection are walked by walking their
iterators;

  3) Members of java.util.Map are walked by walking iterators over
their values;

  4) Members of java.util.Iterator and java.util.Enumeration are
walked by iterating them;

  5) Members of java.lang.Number are “walked” by returning integers
less than the given number starting with zero;

  All other objects are treated as singleton collections containing
only themselves.

 文章来源 http://commons.apache.org/proper/commons-ognl/language-guide.html

面说的且是ognl的一部分特色,下面说一样游说还当哪些地方使用

The normal usage of OGNL is to embed the language inside of other
constructs to provide a place for flexible binding of values from one
place to another. An example of this is a web application where values
need to be bound from a model of some sort to data transfer objects that
are operated on by a view. Another example is an XML configuration file
wherein values are generated via expressions which are then bound to
configured objects.

 上面立段话来于ognl官方网站,主要是说ognl主要用以view(jsp)中,还有即使是放开XML文件中,比如在web项目面临的web.xml
和 strut中的struts.xml

关于ognl的使用

http://blog.csdn.net/li\_tengfei/article/details/6098134。//
详细讲解valueStack,以及Ognl语言特性

http://www.blogjava.net/max/archive/2007/04/28/114417.html   //
Ognl的应用

 这点儿篇博客讲的那个懂得,我加一个valueStack中目标的压人顺序:

图片 11

图片 12

相关文章