SpringMVC学习手册(三)------EL和JSTL(上)
1.含义
2.测试项目构建
2.1 复制JSTL的标准实现
2.2 在JSP文件中使用taglib标记定义前缀与uri引用
3.EL 学习
3.1 JSP页面的EL控制开关
3.2 基本语法的使用:
(1)"[]"与"."获取值
- JavaBean 中的值
- 数组中的值
- 集合中的值
<%@page import="
java.util.*,
model.*
"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<% //对象参数
Student s= new Student("Tom",19);
pageContext.setAttribute("ps", s); //数组参数
int numList[]={1,2,3,4,5};
pageContext.setAttribute("pnumList",numList); //List集合参数
ArrayList<Integer> sList = new ArrayList<Integer>();
sList.add(1);
sList.add(2);
sList.add(3);
pageContext.setAttribute("psList",sList); //Map集合参数
Map<String,String> m =new HashMap<>();
m.put("Tom", "19");
m.put("Tina","20");
pageContext.setAttribute("pm", m); %>
<div>1.取值操作
<p>(1)获取student对象属性(个人觉得使用"."的形式获取更方便):</p>
<ul>
<li>${ps.name}</li>
<li>${ps.age}</li>
<li>${ps["name"]}</li>
<li>${ps["age"]}</li>
</ul>
<p>(2)获取数组中的值:</p>
<ul>
<li>${pnumList[0]}</li>
<li>${pnumList[1]}</li>
<li>${pnumList[2]}</li>
<li>${pnumList[3]}</li>
</ul>
<p>(3)获取List集合对象中的值:</p>
<ul>
<li>${psList[0]}</li>
<li>${psList[1]}</li>
<li>${psList[2]}</li>
</ul>
<p>(4)获取Map集合对象中的值,如果键为数值,只能使用"[]"形式获取其中的值</p>
<ul>
<li><span>Tom`s age:</span>${pm.Tom}</li>
<li><span>Tina`s age:</span>${pm["Tina"]}</li>
</ul>
</div> </body>
</html>
(2)运算符
| 符号 | 示例 | 结果 |
| + | ${1+1} | 2 |
| - | ${1-1} | 0 |
| * | ${1*1} | 1 |
| / 或div | ${1 /1} | 1 |
| % 或 mod | ${10 %3 } | 1 |
| 符号: | == 或 eq | != 或 ne | < 或 lt | > 或 gt | <= 或 le | >= 或 ge |
| 符号 |
| && 或 and |
| || 或 or |
| ! not |
| 符号(三目运算符) |
| ?: |
3.3 EL隐含对象
- pageScope
- requestScope
- sessionScope
- applicationScope
- pageContext
- request
- session
- application
- 找到:直接返回,不再继续查出下去
- 没找到:返回空字符串
3.4 EL与请求参数相关的隐含对象
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form method="post" action="param.jsp">
名字:<input type="text" name="userName"/ >
<input type="checkbox" name="habit" value="读书"/>读书
<input type="checkbox" name="habit" value="游戏"/>游戏
<input type="checkbox" name="habit" value="跑步"/>跑步
<input type="submit" value="提交"/>
</form>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%request.setCharacterEncoding("UTF-8"); %>
${param.userName }
${paramValues.habit[0]}
${paramValues.habit[1]}
${paramValues.habit[2]}
</body>
</html>

SpringMVC学习手册(三)------EL和JSTL(上)的更多相关文章
- Java Web学习笔记之---EL和JSTL
Java Web学习笔记之---EL和JSTL (一)EL (1)EL作用 Expression Language(表达式语言),目的是代替JSP页面中复杂的代码 (2)EL表达式 ${变量名} ( ...
- SpringMVC 学习笔记(三)数据的校验
34. 尚硅谷_佟刚_SpringMVC_数据绑定流程分析.avi 例如:在jsp中输入一个String字符串类型,需要转换成Date类型的流程如下 convertservice对传入的数据进行转换 ...
- SpringMVC学习笔记(三)
一.SpringMVC使用注解完成 1.首先,导入SpringMVC需要的jar包. 2.添加Web.xml配置文件中关于SpringMVC的配置 <!--configure the setti ...
- springmvc学习(三)
第一点---------使用 @RequestMapping 映射请求• Ant 风格资源地址支持 3 种匹配符:?:匹配文件名中的一个字符 *:匹配文件名中的任意字符 **:** 匹配多层路径 @R ...
- SpringMVC学习记录三——8 springmvc和mybatis整合
8 springmvc和mybatis整合 8.1 需求 使用springmvc和mybatis完成商品列表查询. 8.2 整合思路 springmvc+mybaits的 ...
- SpringMVC学习笔记三:Controller的返回值
springMVC的返回值有ModelAndView,String,void,Object类型 项目目录树: 该项目是在前面项目的基础上修改的,这里的pom.xml文件需要加入使用到的包,应为@Res ...
- springmvc学习日志三
一.文件的上传 1.首先在lib中添加相应的jar包 2.建立jsp页面,表单必须是post提交,编码必须是multipart/form-data,文件上传文本框必须起名 <body> & ...
- SpringMVC学习(三)整合SpringMVC和MyBatis
工程结构 导入jar包 配置文件 applicationContext-dao.xml---配置数据源.SqlSessionFactory.mapper扫描器 applicationContext-s ...
- springmvc学习第三天
利用spring mvc 实现crud 1.导入jar包 commons-logging-1.2.jarjstl.jarspring-aop-4.1.6.RELEASE.jarspring-beans ...
随机推荐
- [Linux] awk与posix字符集
awk posix字符集[:alnum:] 文字数字字符[:alpha:] 文字字符[:digit:] 数字字符[:graph:] 非空字符(非空格.控制字符)[:lower:] 小写字符[:cntr ...
- [Go] 使用go语言解决现代编程难题
1.计算机一直在演化,64核,128核等等,但是我们依旧在使用为单核设计的技术编程2.Go语言让分享自己的代码包更容易3.Go语言重新思考传统的面向对象,提供了更高效的复用代码手段4.Go不仅提供高性 ...
- Java 由浅入深GUI编程实战练习(一)
项目简介: 1.实现利用下拉菜单的方式选择发送快捷语句: 2.实现对留言信息内容的置顶处理以及至尾处理: 3.实现清屏处理或现实保留部分留言内容: 运行界面: 代码展示: import java.aw ...
- IOS自带输入法中文不触发KEYUP事件导致vue双向绑定错误问题
先上图: 可以看到输入框中的内容和弹出框的内容不一致, <input class="am-fr labRight" id="txcode" type=&q ...
- 挖一挖MongoDB的备份与还原(实现指定时间点还原和增量备份还原)
一 研究背景需求 目前作者所在公司的MongoDB数据库是每天凌晨做一次全库完整备份,但数据库出现故障时,只能保证恢复到全备时间点,比如,00:30 做的完整备份,而出现故障是下午18:00,那么现 ...
- [翻译]:MySQL Error: Too many connections
翻译:MySQL Error: Too many connections 前言: 本文是对Muhammad Irfan的这篇博客MySQL Error: Too many connections的 ...
- iOS 常用三方(持续更新)
iOS 常用三方 1.ZWMSegmentController 分页控制器 https://github.com/weiming4219/ZWMSegmentController
- call()与apply()区别typeof和instanceof的区别
摘自 http://www.cnblogs.com/qzsonline/archive/2013/03/05/2944367.html 一.方法的定义 call方法: 语法:call(thisObj, ...
- Cordova入门系列(三)Cordova插件调用
版权声明:本文为博主原创文章,转载请注明出处 上一章我们介绍了cordova android项目是如何运行的,这一章我们介绍cordova的核心内容,插件的调用.演示一个例子,通过cordova插件, ...
- redis 基本原理及安装
一:什么是redis? Redis 是一个开源的,高性能的,基于键值对的缓存与存储系统.通过提供多种键值数据类型来适应不同场景下的缓存与存储需求. 二:redis数据库有什么优点? Redis数据库中 ...