JSP标签JSTL的使用(1)--表达式操作
单纯的使用jsp脚本来进行逻辑处理,显得代码很是杂乱。为了更加简洁也为了便于代码的阅读,于是JSTL应运而生。
库文件下载地址:
- 我自己上传的一份压缩文件,里面包含了所有需要的jar包,而且不需要积分。下载地址
- 到官网上去直接下载直接下载那个标准的zip文件解压即可
使用库文件之前最为重要的是加入便签库文件声明
<!-- prefix的作用是将名称空间URI映射到名称空间前缀 -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
你可以随意的改变prefix的值,因为这个值仅仅是一个映射的前缀而已,不关乎本身的意义。
表达式操作
- 输出标签
- 存值标签
- 移除变量标签
- 异常处理标签
## `<c:out value="">` ##
//value内部可以是敞亮,也可以是变量(变量需要用${变量名}表达)
<c:out value="${1+2+3 }"></c:out>
<c:out value="this is a constant!"></c:out>
<%
String username="Summer";
request.setAttribute("username",username);
%>
<c:out value="${requestScope['username'] }"></c:out>
<!-- 使用default值 -->
<c:out value="${username1 }" default="error"></c:out>
<c:set>标签
//这个标签的作用是存储变量的临时值,可以存储到scope对应的四个对象上,也可以自定义javabean并存入其中
//第一种方式
<!-- set标签的使用方式,将一个值为value的名称为var的数据存入一个scope中,scope可以选的有四种:pageScope,requestScope,sessionScope,applicationScope -->
<c:set value="姓名" var="name" scope="session"></c:set>
<c:out value="${name }"></c:out>
//第二种方式,这里需要我们自定义一个javabean,并使用<jsp:useBean>标签引入到项目中
//bean.Person代码如下:
package bean;
public class Person {
private String name;
private String age;
private String address;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
//接下来是使用set标签的地方
<!-- 添加使用bean的方式声明 -->
<jsp:useBean id="person" class="bean.Person"></jsp:useBean>
<!-- 将值存储到javabean中,注意target对应的值应该与<jsp:useBean>标签中的id 一一对应 -->
<c:set target="${ person }" property="name" value="郭瑞彪"></c:set>
<c:out value="${person.name }"></c:out>
<c:remove>标签,需要注意的是它只能移除一个具体的值
<c:remove var="TheName">//这样就可以移除TheName对应的值了
<c:catch>标签
这个标签是对异常处理的很好的帮手,一般作为外部大嵌套使用。
<c:catch var="error09">
<!--在catch变迁内做一些逻辑处理即可,变量var就可以追踪到异常信息,并可以用<c:out>标签输出-->
<c:import url="tt.txt" charEncoding="gb2312"></c:import>
</c:catch>
<c:out value="${error09 }"></c:out>
JSP标签JSTL的使用(1)--表达式操作的更多相关文章
- jsp标签jstl和el表达式
1.el表达式的使用 1)访问bean的属性 方式一: ${user.name},容器会依次从pageContext,request,session,application中查找(getAttribu ...
- JSP标签JSTL(5)--常用的标签函数
在使用JSTL的标签函数的时候请务必加上如下代码 <!-- 添加jsp标签的核心库 --> <%@ taglib uri="http://java.sun.com/jsp/ ...
- JSP标签JSTL(4)--URL
<c:url>标签作用是将一个URL地址格式化为一个字符串,并且保存在一个变量当中.它具有URL自动重写功能.value指定的URL可以是当前工程的一个URL地址,也可以是其他web工程的 ...
- JSP标签JSTL(2)--流程控制
对于流程控制,单纯的用jsp脚本,显得很是繁琐,尤其是遇到if判断的时候,写代码的时候就需要特别的小心,因为极有可能会出现符号不匹配的状况.但是利用标签语言就会大大的改善这一状况. 流程控制 if标签 ...
- JSP标签JSTL(3)--迭代操作
简单点说,<c:forEach>标签的作用就是迭代输出标签内部的内容.它既可以进行固定次数的迭代输出,也可以依据集合中对象的个数来决定迭代的次数. <!--语法使用如下--> ...
- JSP、JSTL标签、EL表达式
JSP.JSTL标签.EL表达式 1.EL表达式:${} 功能: 获取数据 执行运算 获取web开发的常用对象 2.JSP标签 例如: jsp标签还有很多功能,这里只列举出一种. <jsp:fo ...
- JavaWeb之 JSP:内置对象,EL表达式,JSP标签基础
JSP的内置对象 什么是JSP的内置对象呢? 在JSP页面进行编程的时候,如果我们要使用一些对象,如:HttpSession,ServletConfig,ServletContext这些对象,如果每次 ...
- jsp web JavaBean MVC 架构 EL表达式 EL函数 JSTL
一.JavaBean概念(非常重要) 1.JavaBean就是遵循一定书写规范的Java类型(开发中:封装数据) a.必须有默认的构造方法,类必须是public的 public class ...
- [原创]java WEB学习笔记43:jstl 介绍,core库详解:表达式操作,流程控制,迭代操作,url操作
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
随机推荐
- 如何为分布式系统优雅的更换RPC
为啥需要更换RPC? 很多小伙伴都遇到过需要为分布式系统调用更换RPC的问题,为什么会遇到这种事呢?其实,在系统搭建初期,需求简单,架构简单,最重要的是请求量也少,所以很多系统都采用快速原型开发模式, ...
- VS生成项目时,有些文件无法复制到输出目录的解决办法
有时候,我们在生成项目时,发现有些文件如:.jpg的图片文件,无法复制到输出目录中,此时会非常纠结,反复的清理项目,重新生成,依旧不能解决此问题.后来我打开.csproj的项目工程文件时,经过对比发现 ...
- 利用mybatis-generator自动生成数据持久化的代码
MyBatis生成器简介 MyBatis Generator(MBG)是MyBatis MyBatis 和iBATIS的代码生成器.它将生成所有版本的MyBatis的代码,以及版本2.2.0之后的iB ...
- WPF 窗口居中 & 变更触发机制
窗口居中 & 变更触发机制 解决: 1.单实例窗口,窗口每次隐藏后再显示时,位置居中显示 2.多屏幕下单实例窗口,当父窗口移动到其它屏幕时,单实例窗口再次弹出时,位置才更新到父窗口屏幕. 3. ...
- 网络不能上网但能ping通处理
同事电脑不能上网,经过检查可以排除网线和网络问题,默认网关以及网页地址都能ping通,从网上搜索说是LSP问题,但是根据其操作方式修复,还是无效. 最后,不知道怎么捣鼓的,问题解决了. 操作流程: 1 ...
- 1-学习GPRS_Air202(Air202开发板介绍)
记得自己第一次实现远程通信是在学校里用SIM900A实现的,随着WIFI模块的普及自己就开始用WIFI模块了,当然WIFI模块已经用的很... WIFI模块要想实现远程控制必须连接路由器,其实在做王哥 ...
- JS实现2048代码
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- ACM 排列2
Ray又对数字的列产生了兴趣: 现有四张卡片,用这四张卡片能排列出很多不同的4位数,要求按从小到大的顺序输出这些4位数. Input每组数据占一行,代表四张卡片上的数字(0<=数字<=9 ...
- PHP MySQL Update
UPDATE 语句用于中修改数据库表中的数据. 更新数据库中的数据 UPDATE 语句用于更新数据库表中已存在的记录. 语法 UPDATE table_name SET column1=value, ...
- Tinyhttpd for Windows
TinyHTTPd forWindows 前言 TinyHTTPd是一个开源的简易学习型的HTTP服务器,项目主页在:http://tinyhttpd.sourceforge.net/,源代码下载:h ...