java el jstl_java -EL技术JSTL技术
EL技术
EL 表达式概述
EL(Express Lanuage)表达式可以嵌入在jsp页面内部,减少jsp脚本的编写,EL出现的目的是要替代jsp页面中脚本(java代码)的编写。
EL从域中取出数据(EL最重要的作用)
jsp脚本:
EL表达式替代上面的脚本:${requestScope.name}
EL最主要的作用是获得四大域中的数据,格式${EL表达式}
EL获得pageContext域中的值:${pageScope.key};
EL获得request域中的值:${requestScope.key};
EL获得session域中的值:${sessionScope.key};
EL获得application域中的值:${applicationScope.key};
EL从四个域中获得某个值${key};
---同样是依次从pageContext域,request域,session域,application域中获取属性,在某个域中获取后将不在向后寻找
1)获得普通字符串
2)获得User对象的值
3)获得List的值
pageContext.setAttribute("name", "pageContxt");
//存储字符串
request.setAttribute("name", "request");
//存储一个对象
Users user=new Users();
user.setId(1);
user.setUsername("lisi");
user.setPwd("123");
session.setAttribute("user", user);
//存储一个集合
List list=new ArrayList();
Users user1=new Users();
user1.setId(1);
user1.setUsername("wangwu");
user1.setPwd("123");
list.add(user1);
Users user2=new Users();
user2.setId(1);
user2.setUsername("zhaoliu");
user2.setPwd("123");
list.add(user2);
application.setAttribute("List", list);
%>
out.write(u.getUsername());
%>
${requestScope.name}
${sessionScope.user.username}
${applicationScope.List[0].pwd}
${name }
${user.username}
${List[0].pwd}
EL的内置对象11个
pageScope,requestScope,sessionScope,applicationScope
---- 获取JSP中域中的数据
param,paramValues - 接收参数.
相当于request.getParameter() request.getParameterValues()
header,headerValues - 获取请求头信息
相当于request.getHeader(name)
initParam - 获取全局初始化参数
相当于this.getServletContext().getInitParameter(name)
cookie - WEB开发中cookie
相当于request.getCookies()---cookie.getName()---cookie.getValue()
Form.html
Form.jsp
request.getParameter("username");
//.....
%>
${param.username }
${header["User-Agent"] }
${cookie.abc.value }
${pageContext.request }
Cookie.jsp
Cookie cookie=new Cookie("abc","zhangsan");
response.addCookie(cookie);
%>
Index.jsp
pageContext - WEB开发中的pageContext.
pageContext获得其他八大对象
${pageContext.request.contextPath}
EL执行表达式
例如:
${1+1}
${empty user}
${user==null?true:false}
JSTL技术
JSTL概述
JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能。jstl出现的目的同el一样也是要代替jsp页面中的脚本代码。JSTL标准标准标签库有5个子库,但随着发展,目前常使用的是他的核心库
JSTL下载与导入
JSTL下载:
从Apache的网站下载JSTL的JAR包。进入“http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/”网址下载 JSTL的安装包。jakarta-taglibs-standard-1.1.2.zip,然后将下载好的JSTL安装包 进行解压,此时,在lib目录下可以看到两个JAR文件,分别为jstl.jar和standard.jar。 其中,jstl.jar文件包含JSTL规范中定义的接口和相关类,standard.jar文件包含用于 实现JSTL的.class文件以及JSTL中5个标签库描述符文件(TLD)
将两个jar包导入我们工程的lib中
使用jsp的taglib指令导入核心标签库
JSTL核心库的常用标签
1)标签
其中test是返回boolean的条件
xxxx
Index.jsp
登陆
注册
${user.name}
退出
Ceshi.jsp
//模拟用户已经登录成功
User user=new User();
user.setId(100);
user.setName("张三");
user.setPwd("123");
session.setAttribute("user", user);
%>
2)标签
使用方式有两种组合形式:
${pro.name}
${entry.key }->${entry.value.name }
示例:
1)遍历List的值
2)遍历List的值
3)遍历Map的值
4)遍历Map的值
5)遍历Map>的值
entry.key-----User
entry.value------List
java el jstl_java -EL技术JSTL技术相关推荐
- java ee jstl_Java EE之JSTL(下)
3.使用国际化和格式化标签库(FMT命名空间) 如果你希望创建部署在Web上,并面向庞大的国际化用户的企业级Java应用程序,那么你最终需要为世界的特定区域进行应用程序本地化.这将通过国际化实现(通常 ...
- jsp常见面试题及其知识点、EL、JSTL技术
一.JSP技术 1.jsp脚本和注释 jsp脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部 2)<%=java变量或表达式> - ...
- java高深技术总结_一名25K以上的高薪Java程序员总结出的技术以及学习技能
原标题:一名25K以上的高薪Java程序员总结出的技术以及学习技能 总所周知,Java是目前使用最为广泛的网络编程语言之一. 它具有简单,面向对象,稳定,与平台无关,解释型,多线程,动态等特点. 一般 ...
- java学习笔记—EL表达式(38)
EL表达式 EL即Expression Language,主要的任务是帮助开发者简化获取域属性. 但是一般情况下需要使用EL和JSTL结合使用. 语法: ${ // 隐含对象|直接写域中的属性 } ...
- java 代码执行el,专属于java的漏洞——EL表达式注入
前言"FSRC经验分享"系列文章,旨在分享焦点科技信息安全部工作过程中的经验总结,包括但不限于漏洞分析.运营技巧.sdl推行.等保合规.自研工具等等. 欢迎各位安全从业者持续关注~ ...
- Java开发与技术挑战——关于技术的技术思考
Java开发与技术挑战--关于技术的技术思考 width="22" height="16" src="http://hits.sinajs.cn ...
- Java后端开发需具备什么技术?这几个部分你需要关注
Java后端开发需具备什么技术?对于初学Java并且有志于后端开发的同学来说,需要重点关注以下几个部分: Java开发普遍需要: 1.Java基础 2.数据库 MYSQL/SQLServer/Orac ...
- Java 正青春:现状与技术趋势报告
背景 1991 年,James Gosling 带领团队开始了一个叫"Oak"的项目,这个就是 Java 的前身.1995 年,Java1.0 发布."Write onc ...
- 布线问题分支限界法java_大型布线:Java云应用程序缺少的技术
布线问题分支限界法java 您是否曾经想过,为什么大多数Java框架中的依赖项注入仅用于本地进程内服务而不是分布式服务? 我最近在2013年EMC世界大会上遇到了Paul Maritz的主题演讲 (跳 ...
最新文章
- JS+Canvas的棋盘游戏和Java的动态结合
- 【推荐】iOS汉字转拼音第三方库
- session 详解
- 每日一笑 | 程序员千万不能轻易去网吧!
- emc re 整改 超标_老刘工程师睡前故事5-EMC 辐射发射超标怎么办?
- 显微镜下的大明内容_平凡故事展现炮火下人性光辉,李少红《解放·终局营救》创作全解...
- c++ loadlibrary 初始化对象_C++构造函数和初始化表
- MySQL Aggregate (GROUP BY) Function Descriptions
- 每日学习小记 11/02
- 比特币交易的脚本如何执行
- Atitit 定时器timer 总结 目录 1. 定时器 循环定时器 和timeout超时定时器	1 2. Spring定时器	1 2.1. 大概流程	1 2.2. 核心源码springboot	1
- 3D 数学(三角函数、坐标系、向量、摄像机跟随、点乘)
- 阿里云免费SSL证书到期了怎么办?(阿里云虚拟主机安装HTTPS)
- IAR for STM8下载、安装、注册
- Xenu Link Sleuth死链接检测工具(SEO工具)
- 网络访问:从网络访问此计算机属性增加guest组,workgroup无法访问,详细教您workgroup无法访问如何解决...
- 技术期刊 · 白日照耀开鸿蒙 | 深入鸿蒙 ACE UI 框架解析;无限循环的 useEffect 类型;用 Three.js 实现 3D 房间;图神经网络入门;超基础的机器学习入门-原理篇
- php 定义宏函数,汇编语言宏函数
- python defaultdict
- 学了python能找人吗_只学python能找工作吗
热门文章
- 皮一皮:直男表示,有钱女人的世界完全不懂...
- 关于零拷贝的一点认识
- 每日一皮:客户期望 vs 最终产品
- 到底一台服务器能够支持多少TCP并发连接?
- 如果有人把支付宝的服务器炸了,你的两毛五是不是就没了?
- 17 个方面,综合对比 Kafka、RabbitMQ、RocketMQ、ActiveMQ
- 选择开源项目的时候,哪些因素是最需要考量的?
- java solar_java中的内部类总结
- java gps 距离计算_java计算两个GPS经纬度之间的距离(转)
- php5.2的配置方,Windows IIS PHP 5.2 安装与配置方法