关闭

jsp标签&jstl

218人阅读 评论(0) 收藏 举报
分类:

jsp标签&jstl


 1.什么是jsp标签 

        sun公司制定的一种技术规范,利用jsp标签来替换jsp文件中的java代码。好处,jsp页面会更简洁,并且更好维护(比如,将jsp文件交给美工去修改就很不方便)。

        可以将jsp标签看做是一个占位符,容器遇到jsp标签之后,会依据标签名找到标签类,然后调用执行标签类中的代码。

        使用jsp标签,有两个好处:

        a.jsp文件很好维护。

        b.方便代码的复用(可以将一些常见的代码封装成一个jsp标签)。


 2.jstl是什么?

        jstl:java standard taglib(java标准标签库,apache开发的一套标签,捐献给了sun,sun将其命名jstl)。

        如何使用?(web10_2.e2.jsp)

            step1,将jstl标签对应的jar文件拷贝到WEB-INF\lib下。

                standard.jar    jstl.jar

            step2,使用taglib引入jsp标签。

  演示代码:(web10_2.e2.jsp)

<!--  

<%@page pageEncoding="utf-8" contentType="text/html; charset=utf-8" %>

<%@taglib uri="http://java.sun.com/jsp/jstl/core"  prefix="c" %>
<html>
	<head></head>
	<body>
		taglib标签的uri属性为命名空间,prefix属性值为此命名空间的简写。
		<c:if test="${1>0}">hello</c:if>
	</body>
</html>

-->


 3.jstl中几个核心标签

        1)if

            <c:if test="" var="" scope="">

                标签体(el表达式/java代码)

            </c:if>

            当test属性值为true,执行标签体的内容,test属性可以使用el表达式。

            var属性用来指定绑定名称。

            scope属性指定绑定的范围,可以是page、request、session、application。

        2)choose

            <c:choose>

                <c:when test=""> ... </c:when>
                ...

                <c:otherwise> ... <./c:otherwise>

            </c:choose>

            when和otherwise必须要放到choose标签里面才能使用。

            when可以出现1次或者多次,otherwise可以出现0次或者1次。

        3)forEach

            <c:forEach var="" items="" varStatus="">

            </c:forEach>

            用来遍历集合,其中,items属性用来指定要遍历的集合,可以使用el表达式。var属性用来指定绑定名,绑定范围是pageContext,绑定值是集合中的某个元素。

            varStatus属性指定绑定名,绑定范围是pageContext,绑定值是一个由容器创建的一个对象,该对象封装了当前迭代的状态。比如,该对象提供了getIndex,getCount方法,其中getIndex会返回当前迭代的元素的下标(从0开始),getCount会返回当前迭代的次数(从1开始)。


 4.jsp标签是如何运行的?

        容器依据命名空间找到标签的描述文件(.tld文件),接下来,依据标签的名称找到标签类的类名,然后将该标签实例化,最后,调用标签实例的相应的方法。

        注:容器会先从WEB-INF下查找,如果找不到,还会查找WEB-INF\lib下的jar文件。



5.javaee5.0当中,如何使用el表达式和jstl

    j2ee 1.4  -->  servlet 2.4  -->  tomcat 5.0

    javaee 5.0  -->  servlet 2.5  -->  tomcat 6.0

    在javaee5.0以上版本当中,已经将jstl标签对应的jar文件包含进来了,不用再去将这些jar文件拷贝到WEB-INF\lib下。





            
   
0
0
查看评论

jsf标签,jsp标签与jstl标签

JSF通过定制标签与JSP集成。之前展示过的所有JSF标签,、、和等,都是定制标签。根据规范要求,JSF 实现必须通过提供访问所有标准组件、呈现器、验证器和转换器的定制标签来支持JSP。这些标签库(包括在JSF JAR中)列于表3-6中。表3-6  JSF定制标签库 ...
  • liyong1115
  • liyong1115
  • 2008-02-20 15:54
  • 4241

JSP中EL表达式以及JSTL标签库

在JSP中JSTL标签库用的还是比较多的,今天就稍微总结一些JSTL中常用的一些标签:1.在JSP中还有一个就是EL表达式经常和JSTL标签联合使用 格式:${}${user.name},${user["name"]}上面的写法一样,但有2种情况除外 1)包含特殊字符${us...
  • baidu_32877851
  • baidu_32877851
  • 2017-02-12 21:12
  • 1465

include指令与JSTL标记区别

如果您希望在JSP页面上使用任何JSTL标记,您首先必须在该页面上声明标记库前缀和URL。我们正在使用核心JSTL库,因此使用的标准前缀是 c (代表 核心)。表1显示增加了 taglib 指令的Web站点索引文件: 表1:索引文件的taglib指令 newInstance.com ...
  • guoquanyou
  • guoquanyou
  • 2008-11-19 11:34
  • 5281

JSTL中循环标签的使用

JSTL标签库中包含和两个循环标签。 一、 有两种语法: 1、集合成员迭代: 2、数字索引迭代: 示例: <%@ page language="java" import="java.util.*" contentTy...
  • u010142437
  • u010142437
  • 2017-03-06 10:41
  • 2509

使用jsp的JSTL标准标签配合数据库连接池与数据库进行交互

前言 昨天因为有事情,没有时间来做实验。今天接着前面的来做了一下,前面已经完成了数据库与开发环境的连接配置。今天要做的就是写一个简单的demo来通过网页操作数据库里面的资源。几个交互的网页那当然是一下子就写完了,代码将会在下面给出。在这次的小实验当中,最令我困惑的就是如何把网页提交的比如说查询的目...
  • HAOTAO_LAI
  • HAOTAO_LAI
  • 2015-07-19 23:15
  • 1105

jsp标签相关问题;推荐大家一个霸气的标签fn

1.背景 今天处理了一个很蛋疼的需求,服务端传过来两个值,在jsp页面判断其中一个值是否包含另一个值,用了很多种标签方法,不是语法标签结构错误就是数据结构不对;最终找到两个可以完成判断包含的方式,下面就简单介绍下: Struts2标签的方式 checked="checked" j...
  • tianyazaiheruan
  • tianyazaiheruan
  • 2014-12-05 19:24
  • 1571

JSP 标准标签库(JSTL)与java代码段<%%>与js结合使用

在jsp中使用c标签,定义了nowYear与nowMonth,其值为页面中复选框选中的年份与月份。 由于java段中无法使用EL表达式${xxx}, 需要使用pageContext获取: String y = (String)pageContext.findAttribute("nowYe...
  • cry1994
  • cry1994
  • 2017-08-01 12:05
  • 478

利用jstl标签实现web项目的国际化

公司的报表项目要推向海外版,所以必须实现英文版,从实现上来讲分为两部分,页面jsp和js提示都要实现,我的jsp英文版是用jstl标签来实现的,js英文版是用i18n来实现的,现在先来说下利用jstl来实现jsp的国际化。       &#...
  • u010602695
  • u010602695
  • 2013-09-27 11:00
  • 849

Spring Mvc那点事---(16)Spring Mvc之JSTL标签

JSTL标签是一个实现web功能的定制标签库,包括输出功能,条件判断,循环等,使用JSTL标签,为动态编写WEB应用程序提供了很大的方便性,能很好的和JAVA语言和HTML进行结合。下面我们看看jstl标签的用法
  • zx13525079024
  • zx13525079024
  • 2016-06-11 21:59
  • 7264

JSTL fmt 标签导致中文乱码的问题

之前其实遇到过fmt:formatDate标签导致页面中文乱码的问题,但是当时是我同事修改了程序解决的,我没有自己研究。昨天需要用到fmt标签了,想起来这个问题,尝试重现了一下,在Resin上是正常的,在WebSphere上是乱码的,于是就研究研究吧。 由于历史原因,我们现在使用的软件产品、开...
  • woyalishanda
  • woyalishanda
  • 2013-08-15 11:07
  • 1591
    个人资料
    • 访问:279410次
    • 积分:6023
    • 等级:
    • 排名:第4989名
    • 原创:351篇
    • 转载:36篇
    • 译文:0篇
    • 评论:27条
    文章分类