JSP

 

 

jsp隐式对象:JSP隐式对象是JSP容器为每个页面提供的Java对象,开发者可以直接使用它们而不用显式声明。JSP隐式对象也被称为预定义变量。

  1. jsp脚本片段

l jsp脚本片段是指嵌套在<%和%>之间的一条或多条java程序代码。

l 在一个jsp页面中可以有多个脚本片段,每个脚本片段都必须嵌套在<%和%>之间。

l 多个脚本片段中的代码可以互相访问

  1. jsp表达式

l jsp表达式将要输出的变量或表达式直接封装在<%=和%>之中,例如Current time:<%=new java.util.Date()%>

l jsp表达式的变量或表达式后面不能有分号(;)

  1. jsp指令

l jsp指令的基本语法格式<%@ 指令 属性名=”值”%>

l 在目前的jsp2.0中,定义了page、include和taglib三种指令

  1. jsp九大内置对象

ü 九大内置对象就是没有声明就可以使用的对象

ü request:HttpServletRequest的对象,代表客户端请求信息,用于接收http传送到服务器的数据(重要)

ü session:HttpSession的对象,代表依次会话(重要)

ü PageContext:页面的上下文,该对象可以获取其它八个内置对象(重要)

ü application:ServletContext的对象,代表当前web应用(域对象,重要)

ü response:HttpServletResponse的对象,代表客户端的响应信息

ü config:ServletConfig的对象,代表当前servlet,用于读取当前servlet的配置信息

ü out:JSPWriter的对象,调用print方法可以把字符串输出到浏览器

ü page:指的是当前jsp对应的servlet对象的引用

ü exception:异常对象

 

  1. jsp页面上的四大域对象

ü 分别是:application、session、request、pageContext

ü 1.application:最大域范围,但进限于当前web应用

ü 2.session:范围仅限于一次会话,浏览器打开到关闭的过程

ü 3.request:范围仅限于同一次请求

ü 4.pageContext:范围仅限于当前页面

 

 

  1. EL表达式
  • 语法:${表达式},例如${name}就等价于<%=request.getAttribute%>
  • 11个内置对象

① pageScope:表示pageContext的域对象

② requestScope:表示request

③ sessionScope:表示session

④ applicationScope:表示application

⑤ param:获取参数

⑥ paramValues:获取所有的参数的值

⑦ header:获取http头

⑧ headerValues

⑨ initParam:获取配置信息

⑩ cookie

⑪ pageContext:最重要的对象-工具类,可获取其他对象例如${pageContext.request}

  • 从某个范围内取值

四个域的寻找顺序为:pageContext、request、session、application、若找不到键值为name的属性值,不会显示null,会显示空字符串。也可以从指定范围内取值

${pageScope.name}

${requestScope.name}

${sessionScope.name}

${applicationScope.name}

  • 支持运算符

判断是否为空:${empty name},返回值为Boolean类型

① 用于判断是否某个值为空。如果一个字符串为“”也是true

② 用于判断集合类是否存在没有数据的项,或该集合为空

  1. JSTL标签

² c:if判断

<c:if test=”${param.age<20}”>

未成年

</c:if>

² c:choose判断,相当于if elseif else

<c:when test=”${param.age<20}”>

小于20....

<c:when>

<c:when test=”${param.age>=20 && param.age<=100}”>

20-100...

</c:when>

<c:otherwish>

大于100..

</c:otherwise>

</c:choose>

² c:forEach遍历

① items  要循环的信息

② begin  开始的元素(0=第一个元素,1=第二个元素)

③ end  最后一个元素(0=第一个元素,1=第二个元素)

④ step  每一次迭代的步长

⑤ var  代表当前条目的变量名称

⑥ varStatus 代表循环状态的变量名称 .count表示迭代计数

  1. MVC设计模式

u MVC模式(Model-View-Controller)是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑

u Model(模型):表示应用程序核心,(比如数据库记录列表)--Bean,封装数据

u View(视图):显示数据,如jsp/html页面

u Controller(控制器):控制页面流转的, 如servlet负责转发

Java web课程学习之JSP的更多相关文章

  1. Java web课程学习之Servlet

    Servlet简介   (1) Servlet本质上就是一个Java类,只不过运行在Servlet容器中 (2) Servlet的功能: ① 创建并返回客户请求的动态HTML页面 ② 创建可嵌入到现有 ...

  2. Java web课程学习之会话(Session)

    Session会话   l web应用中的会话是指一个客户端浏览器与web服务器之间连续发生一系列请求和响应过程 l web应用的会话状态是指web服务器与浏览器在会话过程中产生的状态信息,借助会话状 ...

  3. Java web课程学习之Request和Response

    request和response l HttpServletRequest l 请求转发 l HttpServletResponse l 请求重定向   请求流程 每次请求service(),都会由容 ...

  4. 【Java Web开发学习】Spring4整合thymeleaf视图解析

    [Java Web开发学习]Spring4整合thymeleaf视图解析 目录 1.简单介绍2.简单例子 转载:https://www.cnblogs.com/yangchongxing/p/9111 ...

  5. java web中servlet、jsp、html 互相访问的路径问题

    java web中servlet.jsp.html 互相访问的路径问题 在java web种经常出现 404找不到网页的错误,究其原因,一般是访问的路径不对. java web中的路径使用按我的分法可 ...

  6. 【Java Web开发学习】跨域请求

    [Java Web开发学习]跨域请求 ================================================= 1.使用jsonp ===================== ...

  7. 【Java Web开发学习】Spring MVC 使用HTTP信息转换器

    [Java Web开发学习]Spring MVC 使用HTTP信息转换器 转载:https://www.cnblogs.com/yangchongxing/p/10186429.html @Respo ...

  8. 【Java Web开发学习】Spring JPA

    [Java Web开发学习]Spring JPA 转载:https://www.cnblogs.com/yangchongxing/p/10082864.html 1.使用容器管理类型的JPA JND ...

  9. 【Java Web开发学习】Spring MVC添加自定义Servlet、Filter、Listener

    [Java Web开发学习]Spring MVC添加自定义Servlet.Filter.Listener 转载:https://www.cnblogs.com/yangchongxing/p/9968 ...

随机推荐

  1. THUWC2019 划水记

    Day -2 在学校呆了inf天之后终于回家了! Day 0 在家无(tui)所(fei)事(mo)事(yu),顺便被拉出去剪了个头发,想写写thusc2017的题也写不动,一直在网上冲浪,到处乱翻以 ...

  2. WEBGL学习【十一】光照模型

    <!DOCTYPE HTML> <html lang="en"> <head> <title>Listing 7-3 and 7-4 ...

  3. Zend 官方框架增加 Swoole 协程支持 !

    前言 Zend Framework 是 PHP 的官方框架,随着 Zend-Expressive-Swoole 0.2.2 的发布,率先支持了 Swoole 4 的协程功能,现在可以仅通过一个配置即可 ...

  4. 参数化取值策略Unique

    Unique:主要是强调取值的唯一性,如果到最后没有该值了,LR提供了其他解决方案,如图所示: 此处的下拉列表中提供了三种方式,具体如下: About Vuser,当取值次数超过参数的行数时,忽略脚本 ...

  5. asp.net MVC 自定义模型绑定 从客户端中检测到有潜在危险的 Request.QueryString 值

    asp.net mvc 自定义模型绑定 有潜在的Requset.Form 自定义了一个模型绑定器.前端会传过来一些敏感字符.调用bindContext. valueProvider.GetValue( ...

  6. MySQL 利用binlog增量备份+还原实例

    一,什么是增量备份 增量备份,就是将新增加的数据进行备份.假如你一个数据库,有10G的数据,每天会增加10M的数据,数据库每天都要备份一次,这么多数据是不是都要备份呢?还是只要备份增加的数据呢,很显然 ...

  7. 洛谷 U249 匹配

    U249 匹配 题目描述 输入整数s和两个整数集合A和B,从这A和B中各取一个数,如果它们的和等于s,称为“匹配”.编程统计匹配的总次数 输入输出格式 输入格式: 第一行为三个整数s(0<s≤1 ...

  8. Ubuntu16.04安装Caffe

    一.安装ccmake ccmake和cmake的功能是一样的,但它很方便设置编译前的一些参数,安装只需从官网下载压缩包,解压,最后将解压得到的文件夹中的bin文件夹的路径加入PATH环境变量中即可. ...

  9. gem update --system

    gem update --system 修改完gem sources之后,进行gem update: gem update --system 之后的输出: C:\Sites\test01>gem ...

  10. WifiManager类具体解释

    public class WifiManager extends Object java.lang.Object    ↳ android.net.wifi.WifiManager 类概述 This ...