day34 JSTL标签
JSTL标签
<!-- 写在jsp文件的最前 -->
<!-- JSTL标签库是一个JSP标签的集合,封装了许多jsp应用程序通用的核心功能
prefix="c"标签库的别名是c-->
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!-- JSTL格式化标签 -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="f"%>
13 JSTL标签库与EL表达式综合运用
新建两个封装类,一个User一个City,city类重写有参构造方法
//BaseServlet继承了HttpServlet类,重写了doGet方法
public class MyServlet extends BaseServlet{
public void page1(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
User user = new User();
user.setId(11);
user.setName("zs");
user.setAge(18);
user.setSex(1);
List<City> list = new ArrayList<City>();
list.add(new City(1,"北京"));
list.add(new City(2, "上海"));
list.add(new City(3, "广州"));
req.setAttribute("list", list);
String string = "aaa123";
req.setAttribute("tar", string);
req.getRequestDispatcher("page/demo.jsp").forward(req, res);
}
}
<!-- jsp文件body中,最前勿忘加两标签 -->
<!-- 声明变量标签 -->
<c:set var="money" value="200" scope="request" />
<!-- 取值方式被称为EL表达式,可以访问JavaBeans和jsp内置对象 -->
金额:${money}
<!-- 选中分支标签 -->
<c:if test="${sex eq 1}">
<input type="radio" value="1" checked>男
<input type="radio" value="0">女
</c:if>
<c:if test="${sex eq 0}">
<input type="radio" value="1">男
<input type="radio" value="0" checked>女
</c:if>
<!-- 类似于Java中的switch -->
<c:choose>
<c:when test="${sex eq 1}">
男
</c:when>
<c:otherwise>
女
</c:otherwise>
</c:choose>
<hr>
<!--
遍历结果集
var 表示每次遍历结果集取出来的元素
varStatus这个属性用来指定接收“循环状态”的变量名
current当前这次迭代的(集合中)项
index当前这次迭代从0开始的迭代索引
count当前这次迭代从1开始的迭代索引
first用来表明当前这轮迭代是否为第一次迭代的标志
last用来表明当前这轮迭代是否为最后一次迭代的标志
-->
<c:forEach items="${list}" var="no" varStatus="vs">
${vs,first},${no}<br>
</c:forEach>
<c:set var="now" value="<%=new java.util.Date()%>" />
<!-- 获取时间 -->
${now}
<!-- 格式化时间日期标签 -->
<f:formatDate value="${now}" pattern="yyyy-MM-dd HH:ss:SSS" />
用户id:<input type="text" value="${user.id}">
用户姓名:<input type="text" value="${user.name}">
用户年龄:<input type="text" value="${user.age}">
用户性别:
<c:if test="${user.sex eq 1}">男</c:if>
<c:if test="${user.sex eq 0}">女</c:if>
<!-- 遍历集合 -->
<select>
<option value="">请选择城市</option>
<c:forEach items="${list}" var="city">
<option value="${city.id}">"${city.name}"</option>
</c:forEach>
</select>
<!-- 使用EL表达式获取参数值 -->
<c:out value="${tar}"></c:out>
HTTP请求方式与URI
HTTP请求方法
GET方法
GET与POST请求方式的区别:
1 GET请求业务参数以键值对的形式拼接在URL后面;POST请求业务参数存放在HTTP头信息中;
2 GET请求URL长度是受限制的,URL的最大长度是1024个字符,即2KB;POST请求理论上数据长度无限制,但是数据受web服务器限制;
3 GET请求安全性较差,因为参数是URL的一部分,对用户可见;POST请求相对更安全,因为参数不会被保存在浏览器历史或 web服务器日志中
4 GET请求只允许 ASCII 字符;POST请求没有限制。也允许二进制数据,所以提交多媒体文件用POST方式提交。
1.7.2 HTTP状态码列表
状态码 状态码英文名称 中文描述
200 OK 请求成功。一般用于GET与POST请求
400 Bad Request 客户端请求的语法错误,服务器无法理解
404 Not Found 服务器无法根据客户端的请求找到资源(网页)。通过此代码,网站设计人员可设置"您所请求的资源无法找到"的个性页面
405 Method Not Allowed 客户端请求中的方法(GET/POST)被禁止
500 Internal Server Error 服务器内部错误,无法完成请求
502 Bad Gateway 作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应
URL与URI
2.1 URI
2.1.1 URI定义
URI,统一资源标志符(Uniform Resource Identifier),表示的是web上每一种可用的资源,如 HTML文档、图像、视频片段、程序等都由一个URI进行唯一标识的。
2.1.3 示例
如:https://blog.csdn.net/qq_32595453/article/details/79516787
可以这样解释它:
1)这是一个可以通过https协议访问的资源;
2)位于域名为blog.csdn.net的主机服务器上;
3)通过“/qq_32595453/article/details/79516787”可以对该资源进行唯一标识(注意,这个不一定是完整的路径)
注意:以上三点只不过是对实例的解释,以上三点并不是URI的必要条件,URI只是一种概念,怎样实现无所谓,只要它唯一标识一个资源就可以了。
2.1.2 URI的结构组成
1)资源的命名机制;
2)存放资源的主机名;
3)资源自身的名称。
(注意:这只是一般URI资源的命名方式,只要是可以唯一标识资源的都被称为URI,上面三条合在一起是URI的充分不必要条件)
2.2 URL(Uniform Resource Locator)
URL是URI的一个子集。
URL的一般格式为(带方括号[]的为可选项):
protocol://hostname[:port]/path/[;parameters][?query]#fragment
protocol:网络传输协议:TCP/UDP
hostname:域名或IP地址
port:端口号
path:资源路径
parameters:参数
query:请求参数
URL的格式由三部分组成:
1)协议(或称为服务方式)。
2)存有该资源的主机IP地址(有时也包括端口号)。
3)主机资源的具体地址,如目录和文件名等。
第一部分和第二部分用“/”符号隔开,
第二部分和第三部分用“/”符号隔开。
第一部分和第二部分是不可缺少的,第三部分有时可以省略。
2.3 URI和URL之间的区别
从上面的例子来看,你可能觉得URI和URL可能是相同的概念,其实并不是,URI和URL都定义了资源是什么,但URL还定义了该如何访问资源。URL是一种具体的URI,它是URI的一个子集,它不仅唯一标识资源,而且还提供了定位该资源的信息。URI 是一种语义上的抽象概念,可以是绝对的,也可以是相对的,而URL则必须提供足够的信息来定位,是绝对的。
day34 JSTL标签的更多相关文章
- JSTL标签 参考手册
前言 ========================================================================= JSTL标签库,是日常开发经常使用的,也是众多 ...
- JSTL标签库
JSP页面作为内嵌java的Html简化了Servlet在控制页面显示的语法,但JSP脚本中的表达式功能不够强大,语法也稍显繁杂,EL(Expression Language)表达式语言的出现能够大大 ...
- 重温JSP学习笔记--JSTL标签库
以前写jsp的时候对jstl标签库是有些抵触的,因为我觉得嵌入java代码的方式几乎无往不利,没有必要使用标签库,不过这次复习还是好好地学习了一下,发现这个还是很有用处的,用得好能省不少事,JSTL是 ...
- 简单实用JSTL标签库
1. JSTL标签库是一个什么东东? 简单来说,有了它你就可以在类似HTML的JSP页面里面运用一些高级语法,实现迭代.条件判断.XML文档操作.国际化标签.SQL标签. 2. 如何使用 ? 参考网址 ...
- JSTL标签库之核心标签
一.JSTL标签库介绍 JSTL标签库的使用是为弥补html标签的不足,规范自定义标签的使用而诞生的.使用JSLT标签的目的就是不希望在jsp页面中出现java逻辑代码 二.JSTL标签库的分类 核心 ...
- jstl 标签库的使用
JSTL 核心标签库 使用 JSTL 核心标签库标签共有13个,功能上分为4类: 1.表达式控制标签:out.set.remove.catch 2.流程控制标签:if.choose.when.ot ...
- jstl标签
为什么提出jstl标签? Jsp中包含html标签+java片段+jsp片段使得jsp页面比较乱.提出:能不能把<% %>java片段用标签替换 jsp页面更简洁 <!-- 引入js ...
- 自定义jstl标签库
开发环境:Spring+SpringMVC +Maven +Mybatis JSTL 标签库的配置: 导入对应的 jstl.jar 和 standard.jar ,我使用的配置如下: <prop ...
- JSP的JSTL标签使用
JSTL标签和asp.net中的webform控件很像,但是功能确比asp.net的强很多. 配置过程,从最简单的项目开始: 1.下载JSTL标签库:http://archive.apache.org ...
- JavaWeb学习之JSP常用标签、EL表达式的运算符、JSTL标签库(6)
1.JSP常用标签 * 只要支持JSP文件,常用标签有可以直接使用 * 格式: jsp:xxxx * jsp:forward ,完成jsp页面的转发 * page属性:转发的地址 <% requ ...
随机推荐
- 第三章:模版层 - 1:Django模板语言详解
本节将介绍Django模版系统的语法.Django模版语言致力于在性能和简单性上取得平衡. 如果你有过其它编程背景,或者使用过一些在HTML中直接混入程序代码的语言,那么你需要记住,Django的模版 ...
- nsis插件nsisSlideshow.dll更新
更新至1.7版本,作者wiz0u已解决关于ie9的兼容问题.Good 下载地址: http://wiz0u.free.fr/prog/nsisSlideshow/latest.php
- 数据火器库八卦系列之瑞士军刀随APP携带的SQLite
来源:云数据库技术 数据库打工仔喃喃自语的八卦历史 1. 为导弹巡洋舰设计,用在手机上的数据库 2. Small and Simple, and Better 3. 如何看出是自己的娃:产品定位,特点 ...
- Java开发学习(三十七)----SpringBoot多环境配置及配置文件分类
一.多环境配置 在工作中,对于开发环境.测试环境.生产环境的配置肯定都不相同,比如我们开发阶段会在自己的电脑上安装 mysql ,连接自己电脑上的 mysql 即可,但是项目开发完毕后要上线就需要该配 ...
- 【JavaScript排序】 sort()方法(解决null、undefined、0之间的排序(混乱)问题)
JavaScript排序 - sort()方法 --解决null.undefined.0之间的排序(混乱)问题 一.普通的数组排序 JavaScript中用方法sort()为数组排序.sort() ...
- Java编程基础——敬请期待!!!
变量 数据类型 条件判断 循环 函数 类 Java特性
- 使用工厂方法模式设计能够实现包含加法(+)、减法(-)、乘法(*)、除法(/)四种运算的计算机程序,要求输入两个数和运算符,得到运算结果。要求使用相关的工具绘制UML类图并严格按照类图的设计编写程序实
2.使用工厂方法模式设计能够实现包含加法(+).减法(-).乘法(*).除法(/)四种运算的计算机程序,要求输入两个数和运算符,得到运算结果.要求使用相关的工具绘制UML类图并严格按照类图的设计编写程 ...
- 一天五道Java面试题----第九天(简述MySQL中索引类型对数据库的性能的影响--------->缓存雪崩、缓存穿透、缓存击穿)
这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 1.简述MySQL中索引类型对数据库的性能的影响 2.RDB和AOF机制 3.Redis的过期键的删除策略 4.Redis ...
- VMware16安装RedHat7.6步骤
1.安装准备 安装好VMware 16 下载好RedHat7.6镜像,本文为 rhel-server-7.6-x86_64-dvd.iso 2.点击"创建新的虚拟机"进入" ...
- postman一些你不常用的实用技巧,竟然还能这么玩
序言 各位好啊,我是会编程的蜗牛,作为java开发者,平时调试接口的时候,肯定需要用到接口调试工具,或者Swagger之类的.Swagger的优势在于它可以将后台加的一些接口注释信息直接展示出来,但是 ...