jsp之常用标签库之初见

今天刚开始学习JSTL,所以在这里总结一下今天学到的一些东西。
1.首先什么是EL表达式?
答:el的原名是:expression language,用来实现代码的复用,同样一段逻辑代码,el表达式表示出来的就是比jsp原型语言写出来的简单清晰。
2.JSTL四大标签分类有哪四大?
答:核心标签、格式化标签、SQL标签、XML标签,其中最重要的是核心标签,其他的地位次之
3.el标签具体的表示,即该如何在jsp页面中编写el表达式?
答:举例说明如下:<c:out value="常量或者变量“ ></c:out>形如这样的代码就是一个典型的JSTL,中间的value就是el表达式;el表达式怎么写? 这样的例子就是一个el表达式:${sessionScope.name};el表达式中可以用.来取值,也可以用[]来取值。那么两者有什么不一样的呢?
3..和[]取值有什么区别和联系?
答:.和[]在大多数的情况下是通用的,但是除了两种情况下是只允许使用[]的;
a.当你取值的属性中包含特殊字符时,需要使用[],如:${user.first-name},这样就是错误的,应该使用${user["first-name"]}切忌,这里需要加上双引号,是因为不加双引号,会将first-name当作常量来处理,而不是一个变量。
b.当需要通过变量动态取值时需要使用[],如我需要一个变量接收我传过来的值,${user[param]} ,但是.只能是具体的属性,如${user.age}、${user.sex}等这种确定的,遇到一个变量待传参数的量只能使用[].

[]也可以用于集合内部定位,如${booklist[0].price};这里的0需要定位于集合内部。
4.el表达式中还有一种简单直观的写法${name},那么它不会出错的原因是什么呢?
答:因为在el表达式中,取值是按照一定的顺序来的,它会先从最小的范围内开始查找,page--->request--->session--->application.当都找不到的时候,就会出现空字符串,即什么也不会输出来,这里不会有空指针异常报出,本来输出的应该是null,但是这里做了优化,会输出空字符串。
5.el表达式还存在自动类型转换机制。如普通的jsp中从文本框中获取值的返回值类型直接是String 类型的,当需要做算术运算时还是要进行类型转换,但是el表达式不需要,直接与数字相运算即可,如:普通的jsp书写方式:<% int  count = Integer.parseInt(request.getPatameter("name"));                        int sum = count+20;                %>el表达式:${requestScope.name+20}在上面的两种写法中可以看出来,当第一种在获取了文本框之中的值后还需要进行类型转换,比较麻烦,但是第二种只需要获取就行,会根据后边的变量进行自动类型转换。

6.el表达式都有哪些隐式对象?答:常用的四种:pageScope、requestScope、sessionScope、applicationScope四种对应于jsp中的page、request、session、application.不常用的还有一些形如:cookie,header、headerValues等,分别表示cookie对象、header中存储的是http的头部的map集合等。7.el表达式中还可以使用运算符吗?如果可以,能使用哪些运算符呢?答:可以使用运算符.a.算术运算符:+、-、*、/、mod等b.比较运算符:==、!=、>、<等c.逻辑运算符:&&、||、!d.验证运算符: empty下面分别举例说明一下怎么使用这些运算符:a.<c:out value="${1+2}" ></c:out>         //3b.<c:out value="${a==b}" ></c:out>        //true,如果在没有定义a,b变量时,它默认都是"",会返回truec.<c:out value="${true && false}" ></c:out>    //返回falsed.<c:out value="${empty name}" />       //如果name不为空,那么返回值返回false,如果name不存在,为null                                        //或者空字符串均认为true好啦,今天的总结就到这里,如果有什么不到之处还望指出。
时间: 2024-10-03 06:07:25

jsp之常用标签库之初见的相关文章

Jsp开发常用标签总结

Jsp开发常用标签总结 JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它[1]  是由Sun Microsystems公司倡导.许多公司参与一起建立的一种动态网页技术标准.JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp). 用JSP开发的Web应用是跨平台的,

Struts 有哪些常用标签库

Struts 有哪些常用标签库 1.html标签库 2.bean标签库 3.logic标签库

Struts常用标签库(章节摘要)

1,Struts为了方便用户的开发,提供了专门的标签库,常用的标签库是Bean,Logic和html. 2,Bean标签库可以进行JavaBean或者是资源的操作. 3,Logic标签主要完成的是判断,比较等功能的实现. 4,Html标签库中定义了许多与显示有关的标签,但是这些标签要运行则依赖于ActionForm.Struts常用标签库(章节摘要)

jsp去除JSTL标签库&quot;include, taglib&quot;等留下的空白行

在做项目的时候,经常会使用到JSTL和EL表达式,有时我们需要看下页面生成的源代码,但是当jsp中充满了jstl的各种标签,页面就会存在很多的空白部分,有时太多了会让浏览器假死掉,这是我们就想要去掉这些空白的部分了.去掉的方法很多,下面一一列举出来. 我的开发及服务器环境:Windows7 + Eclipse2014 + Tomcat7.0 + JDK 1.7.0 经过多番测试,可用的方法有: 1.在每个JSP的头上加上一段代码   <%@ page trimDirectiveWhitespac

JSTL常用标签库介绍

最近在开发中经常使用JSTL标签,感觉还是蛮好用的,这里介绍几个比较常用的JSTL标签,供大家参考,也是对自己知识的复习与回顾吧! 第一个就是流程控制标签里面的if,用的是非常多.具体写法: <c:if test="条件">执行语句</c:if> 比如条件1成立,就显示一个按钮,条件2成立就显示一个超链接: <c:if test="条件1"> <input id="submit_btn" class=&q

开发jsp中常用标签

s标签:<%@ taglib prefix="s" uri="/struts-tags"%>request中取值:<s:property value="#request.tipMessage"/>request中取集合长度:<s:property value="#request.list.size()"/>request中判断:        <s:if test="#req

jsp:常用标签的核心标签的使用

一,本例主要讲核心标签的使用方法 <c:out value="${null}" default="ada"></c:out> <!-- out方法如果value值为空则显示默认值 --> <c:out value="&ltadadadd&gt" escapeXml="false"></c:out> <!-- escapeXml方法是否使用Xml特

常用标签库

<!-- https://mvnrepository.com/artifact/javax.servlet/jstl --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> 原文地址:https://www.cnblogs.

jsp常用标签和标签库

1 常用标签forward,pararm,include <jsp:forward page=""></jsp:forward> <jsp:param value="allen" name="username"/> <jsp:include page=""></jsp:include> 2 常用标签库JSTL,使用前需要引用<%@taglib uri="