El学习笔记

上了将快50 天的课程,来说说我的心得吧,笔记是很重要的,是我们复习的资料,是我们查找知识点,典型例题的依据。所以记笔记是很重要的,但是怎么记笔记还是有讲究的。
要调理清醒,如果我们有了一个不会的知识点就就去吧笔记重头到尾看一遍,有时候还不一定能看到,所有要想书的目录一样做个索引把知识点都列出来,(或是今天都讲的知识什么,怎么用,典型例题是什么)。下面就展示是一下我的笔记。
FALSE
EL-day40
EL-day40             主讲内容 :El                 典型例题 :                     关键字 :EL , 隐含对象 的取值                    主讲老师 : 张小飞                2012-12-19
EL
1. 简介
1.EL 出现的原因?
2. 什么是 EL
3.EL 能干什么?
4. 需要导包?什么包?
2.EL 的基本运算
2.1 . [] 运算
2.2 算数运算
2.3 关系运算
2.4 逻辑运算
2.5 其他运算
2.5.1 条件运算符
2.5.2 employ 运算符
3.EL 表达式的隐含对象及其用法
简介
1.El 出现的原因?
jsp 页面中嵌入 java 代码做业务逻辑和输出都是特别麻烦的事,后来就有人设计出来 EL JSTL 标签来实现输出和一定的业务逻辑。
EL 表达式和 JSTL 标签都会被编译为 java 代码去执行。
2. 什么是 EL
Exprrssion language (表达式语言)是 jsp 规范的一部分(不需要导包)
3.EL 都能干什么?
可以再页面得到四大域中的数据,并输出。
功能相当于 jsp 表达式:用于输出指定对象的一些数据。
*4. 不需要导包。
EL 的基本运算
1.. [] 运算符
El 提供了实现两种相应数据存取的运算符。
2. 算数运算符
+${17+5} -${17-5} *${17*5} / div${17/5} % mod${17%5}
3. 关系运算符
== eq${5==5} or ${5 eq 5}  true
!= ne ${5!=5} or ${5 en 5}    false
< lt $(5< 5) or ${5 lt 5}         false
> gt ${5>5} or ${5 gt 5}       false
<= le ${5<=5} or ${5 le 5}   true
>= ge ${5<=5} or ${5 ge 5}  true
在判断两个变量是否相等时, ${ 变量 1== 变量 2}
4. 逻辑运算符
&& and ${A&&B} ${A and B}  true/false
| or  ${A|| B} ${Aor B}       true/false
! out  ${!A} ${not A}         true/false
5. 其他运算符
条件运算符 ${A?B:C}
employ:    ${employ A}
---------------------- 运算符 Test------------------------
request.setAttribute("person1", new Person("1234", "PAPA1", 14));
request.setAttribute("points2", new Person("12345", null, 16));
%>
${person1.age-person2.age}
---- 关系运算 :
${person1.age>person2.age}
---- 逻辑运算 :
${!(person1.age>person2.age)}
----empty 运算:
${empty person1.name}
${empty person2.name}
EL 表达式的隐含对象
pageScope,requestScope,sessionScope,applicationScope,param,pageContext
对应 jsp 中四个域对象 , 他们是 Map 类型对象 , 他们分别存放了对应域对象的属性 , 我们可以冲中根据属性名取出属性值 .
${pageScope}
${requestScope}
${sessionScope}
${applicationScope}
param:
是一个 Map 对象他存放请求的产生 , 可以从中根据参数名取出参数值 .
他是一个 PageContextImpl(PageContext 类的实现子类类型的对象 , 他是一个 javaBean 对象 , 可以根据属性名得到她的队形属性值
pageContext
*** 后加 ***
${cookie.Cookie 名称 .value}
${initParam. 参数名 }
${paramValues} : 获取绑定数组参数
***** 注意 :********
*1. 在不同域中有相同名称的对象 , 系统查找的范围是从小到大 (page--request--session--application)
*2.${msg} 没有意义不会显示 null ,而是什么都不显示。
附件
现实世界中的数据类型:
单一数据
映射数据( key---value
map
复合对象
key 是一个标识, value 是用来操作的数据
根据 key value
数组
根据下标取数据
EL 表达式在隐含对象中取出数据
***********1. 数据类型为对象取值 ********************
// 设置 request 域中的数据 , 四大域中获取对象数据的格式相同
***1.${xxxScope.Person.name}****
request.setAttribute("person", new Person("123", "PAPA", 11));
//EL 获取 request 域中对象数据根据属性名获得的属性值
${person.id }------${person.name }---${person.age }
Person p = (Person)request.getAttribute("person");
<%p.getId() %>---<%=p.getName() %>---<%=p.getAge() %>
// 通过参数名获取参数值
****2.${param.nameKey}****
//EL 等同于下面的 jsp 语法
<%=request.getParameter("nameKey")%>
****3.${array[0]}*****
<%List array=new ArrayList();%>
<%array.get(0)%>
********pageContext***********
pageContext 对象中取出指定属性所对应的属性值这里的属性特指 javabean 的属性 )
所有这个类中 get 方法所对应的属性都可以通过 ". 属性名 " 来取得
${pageContext.request.servletPath }
//EL 等效于下面的 jsp 语法
<%=request.getServletPath() %>
${pageContext.session.id}
<%=session.getId() %>
***** 原理 :******
反射 : 属性名是 getName() 方法去掉 get 把第一个首字母小写 (JavaBean 的属性 )
*************2. 数据为集合取值 *********************
下面四个 map 对象中根据 key 取出 value
${xxxScope.username}
<%xxx.getAttribute("username")%>
xxx 代表: pageContext request session application
** 注意: **
1. 在获取对象范围属性值是,可以不用指定范围,系统会自动按从小到大查找。
2. 得到属性值对象数据后,如果它本身还有属性可以直接通过 “. 属性 得到队形的属性值。
request.setAttribute("person", new Person("123", "PAPA", 11));
${person.id }------${person.name }---${person.age }
Person p = (Person)request.getAttribute("person");
p.getId() %>---<%=p.getName() %>---<%=p.getAge()



记笔记我推荐还是电子笔记(需要一款好的电子笔记软件)
1.       方便修改(在那都能插入文字和修改)
2.       方便填充(笔记需要不断的填充)
3.       覆盖方面全(我们可以吧所有的相关知识都写入我们的电子笔记中)
4.       图文(或结构图)


<script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/buttonLite.js#style=-1&uuid=&pophcol=3&lang=zh"></script> <script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/bshareC0.js"></script>
阅读(32) | 评论(0) | 转发(0) |
0

上一篇:兄弟连新年联欢会

下一篇:战地日记

给主人留下些什么吧!~~
评论热议
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值