JSP简介:

  • JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun公司倡导、许多公司参与一起建立的一种动态网页技术标准。
  • Servlet: 处理请求数据的核心环节。
  • jsp的组成 : jsp = html + java脚本 + jsp标签(指令)
  • 支持的java脚本格式:
  1. <%…%>:写java代码片段,(类似方法)
  2. <%=…%>:用于输出,用于输出一条表达式(或变量)的结果。
  3. <%!…%>:声明,用来创建类的成员变量和成员方法(类似与类)
  • jsp中的注释:
  1. 原有的html注释:<!--html注释-->   该种注释在页面使用查看源码的方式可以看见
  2. 单行注释:  // 注释(需要在<%%>中定义)
  3. 多行注释: /*注释*/ (需要在<%%>中定义)
  4. jsp特有的注释:<%--注释--%>  该种注释在页面使用查看源码的方式不能看见

静态和动态包含:

静态包含:<%@include  file="被包含的文件路径"%>

动态包含:<jsp:include  page="被包含的文件路径"%>

区别:静态包含在编译之前先将需要导入的文件包含进来之后成为一个JSP页面再进行转换为servlet,然后最终生成一个*.class文件,而动态包含会将需要导入的文件先编译成独立的class文件之后再包含到目标页面。

EL(Expression Language)表达式:

  它是获取JSP页面数据的一种表达式语言(只能获取数据,不能设置数据),是在JSP2.0开始引入的概念,主要的功能是获取保存在四大作用域中的数据,然后将其显示到jsp页面。

  支持算术运算:${4-3}  ${9/3}

  支持关系运算:> 或 gt,>= 或 ge,< 或 lt,<=或 le,==或 eq,!= 或 ne  例如:${4 le 6}

  支持逻辑运算:&& 或 and,|| 或 or ,!或  非  例如:${true || false}

  支持三元运算:?:   ${3>1? '是‘ :'不是'}

JSTL标签库:

  JSTL是Apache对EL表达式的扩展

  在JSP中使用时需要先使用taglib指令引入JSTL 的核心标签库(core)

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

  在JSP中使用JSTL对后台的Map数据集合进行遍历:

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
2 pageEncoding="UTF-8"%>
3 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
4 <!DOCTYPE html>
5 <html>
6 <head>
7 <meta charset="UTF-8">
8 </head>
9 <body>
10
11 <c:forEach items="${empMap}" var="deptlist">
12 <c:if test="${deptlist.key!='count' and deptlist.key!='cp' and deptlist.key!='kw' and deptlist.key!='ls' and deptlist.key!='allPages'}">
13 <h1>
14 ${deptlist.key}
15 </h1>
16 <table border="1">
17 <tr>
18 <td>编号</td><td>姓名</td><td>职位</td><td>薪资</td><td>领导编号</td><td>入职日期</td><td>佣金</td><td>部门编号</td>
19 </tr>
20 <c:forEach items="${deptlist.value}" var="emp">
21 <tr>
22 <td>${emp.empno}</td>
23 <td>${emp.ename}</td>
24 <td>${emp.job}</td>
25 <td>${emp.sal}</td>
26 <td>${emp.mgr}</td>
27 <td>${emp.hiredate}</td>
28 <td>${emp.comm}</td>
29 <td>${emp.deptno}</td>
30
31 </tr>
32 </c:forEach>
33 </table>
34 </c:if>
35 </c:forEach>
36 </body>
37 </html>

JSP随记的更多相关文章

  1. JSP 随记

    jstl <c:forEach> 遍历,多个<option>时显示"全部".单个 option时,默认选中! 引入:<%@ taglib prefix ...

  2. 记一次对上传对jsp限制的绕过

    当访问网站任何.jsp后缀的文件时都会显示如下图所示或者session timeout等提示, 并且网站防护会,对上传大马和一句话会被查杀. 解决方法: 利用jspx包含,利用jspx包含图片或者cs ...

  3. 记jsp判断

    empty:表示空字符串,null,空数组,空集合. ! empty:表示非空字符串,非null,非空数组,非空集合.

  4. 使用MongoDB和JSP实现一个简单的购物车系统

    目录 1 问题描述  2 解决方案  2.1  实现功能  2.2  最终运行效果图  2.3  系统功能框架示意图  2.4  有关MongoDB简介及系统环境配置  2.5  核心功能代码讲解  ...

  5. 【bb平台刷课记】wireshark结合实例学抓包

    [bb平台刷课记]wireshark结合实例学抓包 背景:本校形势与政策课程课需要在网上观看视频的方式来修得学分,视频网页自带"播放器不可快进+离开窗口自动暂停+看完一集解锁下一集(即不能同 ...

  6. .NET随记【你懂的】

    .NET随记.txt放在桌面好久了,编程过程中记录些杂七杂八的东西,分享给大家希望有所帮助. goto 常用于 switch语句中 字符串相加用 StringBuilder的Append()方法性能好 ...

  7. 重温JSP学习笔记--三大指令九大内置对象

    最近在温习javaweb的相关基础知识,鉴于我弄丢了记满了整整一本的笔记,决定以后把笔记和一些学习上的心得以及碰到的一些问题统统都放在网上,今天看了一下jsp的相关基础,以下是笔记: JSP三大指令: ...

  8. jsp 入门 cookie session

    Java Server Page ==> 服务器端的动态页面资源.用来做显示的功能. JSP构成 ==> HTML 脚本代码 标签构成. JSP 原理 ==> 实际上就是 servl ...

  9. jsp状态管理

    http无状态协议 服务器记不住你 每次浏览器访问,服务器不会特点保存相应信息,故记不住你 jsp状态存储的两种机制 cookie 存储在客户端 用途: 1.简化登陆 2.追踪特定对象 3.保存用户常 ...

随机推荐

  1. Nginx HTTP框架提供的请求相关变量

    L73 binary_remote_addr 对端二进制IPV4或IPV6 一般用作限制用户请求缓存key connection 递增链接序号 connection_requests  一条TCP链接 ...

  2. HEOI2013SAO

    题目描述 给定一个\(DAG\),问这个\(DAG\)有多少种拓扑序. 题解 我们首先需要设计一个能够比较好的转移的状态. 我们可以设\(dp[i][j]\)表示第i个点在当前\(dp\)的子图中拓扑 ...

  3. 堆以及一些用法 QWQ这是写得最认真的板子题

    最近一直在学图论,然后吧,由于学的东西实在是太多太杂了,加上蒟蒻本蒻又经常颓,所以落了好多好多板子题的整理没写啊嘤嘤嘤,不过把这些东西学的差不多了,再一块写个整理,其实感觉还不错?????也算是很神奇 ...

  4. App测试全(转自鲁德)

    1.App测试流程 1.1流程图 1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试时间. 1.3测试资源 ...

  5. Ubuntu18安装Pycharm时遇到的几个问题

    今天给电脑安装了Ubuntu18.04,安装了一些基础软件. 这里是Ubuntu安装Pycharm的一些问题: 1.安装Pycharm. 首先需要到Pycharm官网进行下载安装包,由于我的是Ubun ...

  6. spring-cloud-sleuth 和 分布式链路跟踪系统

    ==================spring-cloud-sleuth==================spring-cloud-sleuth 可以用来增强 log 的跟踪识别能力, 经常在微服 ...

  7. 错误:org.springframework.jdbc.support.SQLErrorCodesFactory - SQLErrorCodes loaded

    使用spring+mybatis整合时报错:org.springframework.jdbc.support.SQLErrorCodesFactory - SQLErrorCodes loaded 错 ...

  8. Python编程四大神兽:迭代器、生成器、闭包和装饰器

    生成器 生成器是生成一个值的特殊函数,它具有这样一个特点:第一次执行该函数时,先从头按顺序执行,在碰到yield关键字时该函数会暂停执行该函数后续的代码,并且返回一个值:在下一次调用该函数执行时,程序 ...

  9. T-SQL实用查询之查询字段所属的数据库表

    SELECT b.name as TableName,a.name as columnname From syscolumns a INNER JOIN sysobjects b ON a.id=b. ...

  10. day 23-1 类的命名空间、组合

    类的命名空间 类与对象命名空间 类里 可以定义两种属性 静态属性 动态属性 类中的静态变量 可以被对象和类调用对于不可变数据类型来说,类变量最好用类名操作对于可变数据类型来说,对象名的修改是共享的,重 ...