一、jsp中c标签的使用

1、变量维护

(1)<c:set>设置变量值和对象属性值,语法如下:

<c:set value="值" var="变量名" scope="变量的作用域" target="对象名" prooerty="对象属性名"><c/:set>

(2)<c:remove>在指定作用域范围内删除变量,语法如下:

<c:remove var="变量名" scope="作用域"></c:remove>

2、流程控制:分为条件标签和迭代标签

(1)条件标签:<c:if><c:choose><c:when><c:otherwise>

<c:if>不能实现else功能,有两种语法形式,是以有无标记体来区分的

①无标记体

无标签体:<c:if test="测试条件" var="变量名" [scope="作用域"] />

有标签体:<c:if test="测试条件" var="变量名" [scope="作用域"]>标签体</c>

②、有标记体

<c:if test="${user:visitCount!=0}">hello!word!</c:if>

(2)<c:choose><c:when><c:otherwise>

<c:when><c:otherwise>无法单独使用,只能作为<c:choose>的子标签来使用,这三个标签组合起来实现switch语句的功能,语法如下

<c:choose><c:when test="${user.class==’guest’}">标签体1</c:when><c:when test="${user.class==’vip’}">标签体2</c:when>   <c:otherwise>标签体3</c:otherwise>
</c:choose>

(3)迭代标签 <c:forEach><c:forTokens>

①<c:forEach>用于遍历一个对象集合

<c:forEach var="变量名" items="集合" varStatus="遍历状态名" begin="begin" end="end" step="step" >标签体
</c:forEach>

②<c:forTokens>用于遍历字符串,而且每次遍历结果返回字符串中的一个单词

<c:forTokens items=“字符串” delims=“分界符” var=“变量名”

<c:forTokens items="字符串" delims="分界符" var="变量名" varStatus="遍历状态名" begin="begin" end="end" step="sep">标签体
</c:forTokens>

3、URL管理

(1)<c:url>:用于对URL地址进行编码

有标签体:

语法:
<c:url value="URL" context="路径" var="变量名" scope="作用域">`标签体`
</c:url>
实例:
<c:url value="http://localhost:8080/el/index.jsp" var="NewURL"><c:param name="name" value="zero"/><c:param name="age" value="28"/></c:url><a href="${NewURL}">点我呀</a>

无标签体:主要用于编辑上下文URL

语法:<c:url value="URL" context="路径" var="变量名" scope="作用域"/>

实例:<c:url value="/logon.jsp">登录</c:url>

(2) <c:import>向当前JSP页面中引入URL资源(可以是远程序站点上的资源)。Include指令和include动作不能向JSP页引入Web程序以外的资源,引入的资源必须位于当前Web程序中

一、String对象引入的语法:
<c:import url="地址" context="上下文路径" var="变量名" scope="作用域" charEncoding="字符集">标签体使用<`c:param`>
</c:import>
实例:
<c:import url="http://www.hao123.com" var="myurl" charEncoding="gb2312">
</c:import>
<a href="${myurl }">地址</a>
二、以Reader对象导入的语法:
<c:import url="地址" context="上下文路径" varReader="变量名" scope="作用域" charEncoding="字符集">标签体使用其它动作元素
</c:import>

(3)、<c:redirect> 用于HTTP重定向

无标签体:<c:redirect url="地址" context="上下文路径"/>

有标签体:

<c:redirect url="地址" context="上下文路径"><c:param/>标签
</c:redirect>

(4)、<c:param>只能嵌入到<c:url>、<c:import>、<c:rediect>标签中作为子元素来使用,此标签主要用于设置URL中将要传入的参数

无标签体:<c:param name="名称" value="值"/ >

有标签体:

<c:param name="名称" value="值" >标签体
</c:param>

4、其他标签<c:out>、<c:catch>

(1)<c:out>:在JSP页面中显示变量内容

无标签体:<c:out value="值" escapeXml="{true|false}" default="默认值"/>

有标签体:

<c:out value="值" escapeXml="{true|false}" default="默认值">标签体
</c:out>
其中:default: 用于指定当value值为null时,应该输出的值。escapeXml: 用于设置是否将"<"、">"、"&"、"’"、"""、这些字符进行转义。escapeXml默认为true,表示不发生转换

(2)<c:catch>:用于处理JSP页面错误,如果JSP页面出错,可以通过对page指令属性的设置将其转到错误处理页面上。<c:catch>标签是对这种错误处理的补充。它的处理方式是将可能发生异常的JSP代码片段嵌入到标记体内,然后使用var属性接收标记体抛出的异常。

语法:
<c:catch var="变量名">嵌套动作
</c:catch>
使用方法:
<c:catch var="myexception">嵌套动作
</c:catch>
<c:if test="${myexception!=null}">内容
</c:if>

参考博文:https://blog.csdn.net/chabale/article/details/9406437

二、jsp中获取数据

jsp中获取数据有两种方法:同步或者异步
1、同步获取数据,jsp里面使用el表达式或者jst标签读取,比如:
Java:request.setAttribute(“para”, “abc”);
JSP:para或者<c:outvalue="{para} 或者<c:out value="para或者<c:outvalue="{para}"></c:out>

用c标签相对安全一些。
2、异步获取数据,用ajax调后台服务,再渲染到页面上,如:

【jsp中c标签的使用以及获取数据】相关推荐

  1. jsp中c标签的详细使用

    jsp中c标签的使用 JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧, ...

  2. JSP中meta标签之详解

    JSP中meta标签之详解 2013年01月26日 16:09:27 阅读数:5589 JSP标签 <meta.....>作用总结 <metahttp-equiv="pra ...

  3. jsp中c标签的使用

    jsp中c标签的使用 核心标签库 它是JSTL中的核心库,为日常任务提供通用支持,如显示和设置变量.重复使用一组项目.测试条件和其他操作(如导入和重定向Web内容).Core标签按功能可分为4种类型: ...

  4. 关于jsp中jstl-core标签循环遍历的使用

    JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签. 除了这些,它还提供 ...

  5. jsp中jstl标签的类似 if - else 语句 的语法

    在jsp中引入jstl的标签库和函数库 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c&q ...

  6. jsp中c标签的引入

    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> c标签的引入需要导包 ...

  7. JSP中jspinclude标签的应用中的相对路径和绝对路径

    JSP中jsp:include标签的应用 1,不支持<%= %>等动态的语法,特别是page属性的值,只能是一个写死的字符串(刚听说,其实也有自己本身的一些特殊语法,以后再学) 2,对于引 ...

  8. QT中 QTabWidget标签页设置及获取

    QTabWidget可用于多标签显示,鼠标选中的标签为当前活动标签页. QTabWidget有个setCurrentIndex槽,可用于修改当前活动标签页. (1).设置当前Tab页: QTabWid ...

  9. vue中拿到接口,并获取数据,渲染到页面

    首先index.html完成的是单页面展示,app.vue里面已经写了视图出口, 例如;先新建一个role.vue页面,写上相应的布局和内容,然后在路由中添加这个页面. 然后开始写渲染数据的方法 前提 ...

最新文章

  1. graphviz绘制决策树
  2. 不到400元,将你的手机变成可编程AI机器人丨英特尔出品
  3. Caused by: java.lang.NoSuchMethodException: onClick_Flashlight [class android.view.View]
  4. 附庸风雅(2006-10-20 13:39:32)(新浪)
  5. Unity3D教程宝典之Web服务器篇:(第二讲)从服务器下载图片
  6. iOS实现基于VLC播放器的封装效果
  7. ffmpeg实现将MP4格式转封装成avi格式
  8. boa服务器怎样运行,boa服务器的配置与编译
  9. Java里的 for (;;) 与 while (true),哪个更快?
  10. Triangle Generative Adversarial Networks
  11. Windows Server 2003下ASP.NET无法识别IE11的解决方法【转】
  12. android短信uri,Android开发,URI 如:发短信,发彩信,调用通讯录等
  13. Excel:INDEX函数与MATCH函数
  14. linux keynav 鼠标可以扔掉了键盘控制鼠标
  15. 24. 两两交换链表中的节点-两两反转链表-LeetCode
  16. OpenMP: sections分段并行
  17. 计算机图形处理的一些知识
  18. 3-5数据链路层-局域网
  19. 我们来聊聊关于数据分析师的前景
  20. MindSpore实现手写数字识别

热门文章

  1. ROS利用RRT*导航代码报错process has died [pid 16501, exit code -11的解决方法
  2. 使用Mendeley和CvtCNKI进行中英文参考文献引用管理(含硕博论文)
  3. python编程课程-吐血整理!程序员喜爱的13个免费Python课程
  4. 看门狗配置以及计算详解
  5. Body的定义及其用法
  6. 蒙特卡罗方法在物理学中的应用:从量子力学到热力学
  7. java项目集合,你想找的java项目都在这了
  8. Spring事务剖析-DataSourceTransactionManager
  9. 百度地图SDK for iOS v2.0.1全新发布
  10. HIWORD和LOWORD