JSTL并非什么新颖的技术并且非常easy,甚至有人觉得JSTL已经过时了。可是我觉得它既然存在,就有存在的道理。作为技术人员就应该知道它们是什么,怎么使用,有什么长处。

JSTL包括两部分:标签库和EL语言。以下先介绍标签库,再介绍EL语言。最后总结一下JSTL的长处。

JSTL

JSTL简单介绍

JSTL(JavaServer Page Standard Tag Library,即:JSP标准标签库),是由SUN公司提供的简化JSP页面设计的标签。JSTL是由Core(核心库)、Format(格式化库)、SQL(支持对数据库的操作)、XML(支持对XML的操作)和Functions(函数库)五大标签库组成,当中最重要就是Core标签库和Format格式化标签库。。

JSTL配置和使用

1、配置

下载包括jstl的jar包,将jstl.jar和standard.jar复制到WEB-INF/lib下

2、使用

採用taglib指令引入标签库,比如:引入核心标签库

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

3、详细语法使用

对于具体语法是怎样使用的,我就不多说了,推荐两篇很具体的博文:JSTL核心标签库JSTL具体解释

EL表达式

EL简单介绍

EL(Expression Language。JSP表达式语言),EL首次被JSTL1.0引入。并合并到JSP规范中,它是JSP中一个非常重要的组成部分。假设仅仅是使用EL表达式不须要引入不论什么jar包。仅仅要jsp/servlet容器实现了J2EE1.4/servlet2.4、JSP2.0规范就能够使用。

EL表达式语法

${EL Expression}  //全部的表达式以"${"開始。以"}"结尾

EL使用"[]"和"."操作符来訪问数据

对于EL的详细使用方法,还是推荐一篇经典博文:EL表达式

EL表达式的长处

1、为了使JSP写起来更加简单。

2、在JSP页面中使用EL表达式,能够简化对变量和对象的訪问。

EL表达式的使用情形

1、静态文本(静态内容)

比如:算数运算:10+5=${10+5}<br>

2、标准标签和自己定义标签

比如:HTML中的标签

3、EL不能在脚本元素中使用

最后,给大家附一张EL表达式在jsp页面响应请求的示意图,帮助大家理解EL表达式的作用。

使用JSTL的长处

JSTL究竟有什么优点,为什么要用JSTL,优点例如以下:

1、简化页面,有利于维护,避免在页面中写Scriptlet(Scriptlet是包括在<% %>之间的Java代码)

当项目很大的时候,jsp页面的java代码每次都必须重写。会出现大量的代码。不易于维护和改动。可读性差。对于不懂java的美工人员相同是一种痛苦。JSTL标签能够无限次的重用,会使界面变的异常简洁,易于维护。

2、实现了分层的思想

JSTL更加符合分层的思想,将数据和显示分离,美工人员仅仅负责美化页面。程序猿的我们负责后台逻辑代码,JSTL使美工与程序分工更加明白,简化了JSP和WEB应用程序的开发。

3、JSTL是SUN公司推出的标准,它不依赖与不论什么框架,仅仅要将jar包引入,并在页面中引入就可以使用!

。。。。。

当然JSTL长处多多。我们就介绍最关键的三点。

总结

EL语言是JSTL输出(输入)一个JAVA表达式的表示形式。通常,我们写JSP页面时,JSTL一般要配合EL表达式使用,达到一个共同的目的:简化页面。降低jsp页面的java代码。实现分层的思想。

【java读书笔记】JSTL,高速精通的更多相关文章

  1. think in java 读书笔记 3 —— 数据报

    目录 think in java 读书笔记 1 ——移位 think in java 读书笔记 2 —— 套接字 think in java 读书笔记 3 —— 数据报 概要 1. 数据报基本知识 2 ...

  2. think in java 读书笔记 2 —— 套接字

    目录 think in java 读书笔记 1 ——移位 think in java 读书笔记 2 —— 套接字 think in java 读书笔记 3 —— 数据报 概要 1. 套接字基本知识 2 ...

  3. think in java 读书笔记 1 ——移位

    目录 think in java 读书笔记 1 ——移位 think in java 读书笔记 2 —— 套接字 think in java 读书笔记 3 —— 数据报 在Think in Java中 ...

  4. Thinking In Java读书笔记--对象导论

    Thinking In Java读书笔记--对象导论[对象]服务提供者==>将对象看做一个服务提供者[程序员分类][类创造者]/[客户端程序员] [访问控制存在的原因?][1]客户端程序员无法触 ...

  5. head first java读书笔记

    head first java读书笔记 1. 基本信息 页数:689 阅读起止日期:20170104-20170215 2. 标签 Java入门 3. 价值 8分 4. 主题 使用面向对象的思路介绍J ...

  6. Java读书笔记1

    Java逍遥游记读书笔记 前言 必须先来一句,这是入门级别,高手勿喷~ 写Android的时候总有一些语句不是很理解,其实大部分是Java的内容,所以想系统的学下Java. 这本书——<Java ...

  7. java读书笔记二

    这是我的一些读书笔记: 我研究了一下面向对象: 面向对象符合人类看待事物的一般规律,对象的方法的实现细节是包装的,只有对象方法的实现者了解细节 我觉得面向过程是由过程.步骤.函数组成,过程是核心,面向 ...

  8. Effective Java读书笔记完结啦

    Effective Java是一本经典的书, 很实用的Java进阶读物, 提供了各个方面的best practices. 最近终于做完了Effective Java的读书笔记, 发布出来与大家共享. ...

  9. Effective java读书笔记

    2015年进步很小,看的书也不是很多,感觉自己都要废了,2016是沉淀的一年,在这一年中要不断学习.看书,努力提升自己 计在16年要看12本书,主要涉及java基础.Spring研究.java并发.J ...

随机推荐

  1. Caffe2(1)----Ubantu14.04安装

    英文好的请直接参考官方安装文档:Ubantu14.04下的源码编译. Caffe2的安装相比以前Caffe一代的安装,简直有点一键装机的感觉,下面简单总结下Caffe2的安装. 环境:Ubantu14 ...

  2. HDU 4649 Professor Tian(反状态压缩dp,概率)

    本文出自   http://blog.csdn.net/shuangde800 题目链接:点击打开链接 题目大意 初始有一个数字A0, 然后给出A1,A2..An共n个数字,这n个数字每个数字分别有一 ...

  3. MYSQL 慢日志

    http://blog.chinaunix.net/uid-9950859-id-122259.html

  4. Linux shell命令中expr

    在Linux shell命令中expr虽然不是很起眼,但是它的作用是非常大的!到目前为止,我个人看来最大的作用就是两个——四则运算和字符串的操作. 先说四则运算,在Shell中四则运算不能简简单单的加 ...

  5. IIS 未能从程序集“System.ServiceModel, Version=3.0.0.0, Culture=neutral,

    在Windows Server 2008中的IIS服务器中部署WCF服务程序时,通过浏览器访问报出如下错误: 未能从程序集“System.ServiceModel, Version=3.0.0.0, ...

  6. 使用Bootstrap 3开发响应式网站实践05,使用Tab、Modal、Form展示内容,使用Popover、Tooltip展示提示信息

    本篇体验用Tab插件显示内容.Html部分为: <div class="row" id="moreInfo"> <div class=&quo ...

  7. MVC无限级分类02,增删改查

    继上一篇"MVC无限级分类01,分层架构,引入缓存,完成领域模型与视图模型的映射",本篇开始MVC无限级分类的增删改查部分,源码在github. 显示和查询 使用datagrid显 ...

  8. Android 手动按power键上锁,没有锁屏提示音,无法恢复【单机必现】

    測试步骤 [測试版本号]T0606 [模块版本号] NAVI锁屏:5.0.0.ck [測试步骤] 1.手动按power键上锁, [測试结果] 没有锁屏提示音,无法恢复[单机必现] [预期结果] 有提示 ...

  9. Objective-C面向对象之实现类

    一般涉及到面向对象都会C#,Java都不可避免的涉及到类,C#中类的后缀名是.cs,Java中是.java,Object-C中一般用两个文件描述一个类,后缀名为.h为类的声明文件,用于声明成员变量和方 ...

  10. Observer 观察者模式 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...