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. Android Path Time ScrollBar(Path 时间轴)

    版本号:1.0 日期:2014.4.22 版权:© 2014 kince 转载注明出处   这是仿Path2.0UI的一个demo的截图,我最早是在农民伯伯的这篇博客中看到的[Andorid X 项目 ...

  2. ConcurrentHashMap JDK 1.6 源码分析

    前言 前段时间把 JDK 1.6 中的 HashMap 主要的一些操作源码分析了一次.既然把 HashMap 源码分析了, 就顺便把 JDK 1.6 中 ConcurrentHashMap 的主要一些 ...

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

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

  4. Delphi 跨平台 Socket 通讯库

    Delphi 跨平台 Socket 通讯库 免费开源的Delphi 跨平台 Socket 通讯库. 源码URL:https://github.com/winddriver/Delphi-Cross-S ...

  5. .NET:如何让线程支持超时?

    背景 本文是为了回复博客园一个兄弟的问题,主要回答两个问题: 如何让线程支持超时? 如何让线程在执行结束后销毁? MS 现在不推荐使用低级别的 Thread 编程,而推荐使用 Task,另外我多数情况 ...

  6. unity3d摄像机参数

    1. Clear Flags:清除标记.决定屏幕的哪部分将被清除.一般用户使用对台摄像机来描绘不同游戏对象的情况,有3中模式选择: Skybox:天空盒.默认模式.在屏幕中的空白部分将显示当前摄像机的 ...

  7. ldap、additional info: no global superior knowledge

    /usr/local/openldap/bin/ldapadd -x -D 'cn=Manager,dc=duxingyu,dc=com' -W -f init.ldif Enter LDAP Pas ...

  8. java 字符串,字符数组,list间的转化

    1.关于java.lang.string.split xxx.split()方法可以将一个字符串分割为子字符串,然后将结果作为字符串数组返回. 2.字符串转字符数组 String str =" ...

  9. Java:字符串类简单的正则表达式

    class Test { public static void main(String[] args) { String str = "xia..as....yuan.com"; ...

  10. C++迭代器失效的几种情况总结

    一.序列式容器(数组式容器) 对于序列式容器(如vector,deque),序列式容器就是数组式容器,删除当前的iterator会使后面所有元素的iterator都失效.这是因为vetor,deque ...