1. jsp页面的基本结构
    1. jsp标记
    2. 普通html标记
    3. 变量和方法的声明
    4. java程序片
    5. java表达式
      1. 变量和方法的声明
        1. <%!    %>   标记符号之间声明变量和方法
          1. 成员变量即全局变量,每次操作会影响其他用户
          2. 一般写在文件的前面
          3. 当一个线程执行java程序片期间调用synchronized时,其他线程同样调用该方法就必须等待上一个结束
      2. java程序片
        1. <%    %> 
          1. 操作成员变量
          2. 调用页面方法
          3. 声明和操作局部变量
          4. 声明的变量在当前页面有效
          5. 页面中多个程序片按顺序 执行
          6. 程序片插入在html标记中,可以灵活处理和显示数据
      3. java表达式
        1. <%=    %> 
        2. 表达式的值被表示成一个字符串形式发送给浏览器
        3. 这个表达式必须能求值
      4. 注释
        1. <%-- 注释内容  --%>
        2. 比起Html<!-- -->标记相比,jsp的注释不被编译,返回的页面中用户看不到注释
  2. JSP指令标记
    1. page 指令标记  
      1. <%@page 属性1 = “ 属性1的值” %>
      2. 与书写位置无关,对当前整个jsp页面有效,习惯写在前面
      3. contenType :用于确定jsp页面的MIME类型和字符编码
        1. 默认“text/html;charset=IOS-8859 -1”
        2. “MIME类型;charset=编码”
        3. 页面只能设置有一次
      4.  language  说明脚本语言
      5. import  引入java语言需要的包
        1. 默认有“java.lang.* "  ,"javax.servlet.* "  、”javax.servlet.jsp“、”javax.servlet.http“
      6. session  是否需要内置的sesion对象,默认true
      7. buffer  设置内置流对象out缓冲区大小
        1. 内置输出流对象out负责将服务器某些信息或运行结果发送到用户端显示
        2. buffer就是来设置out缓冲区的大小,默认8k
      8. autoFlush  设置缓冲区满是否自动刷新,默认true
      9. isThreadSafe 是否支持多线程访问
        1. 默认true,jsp能同时响应多个·用户的请求
        2. 如果为false,则其他用户要等前面那个用户响应完请求后再响应
      10. info  设置页面常用可能经常修改的字符串
        1. 在页面的程序片中可以用getServletInfo()方法获取info属性值
    2. include指令标记
      1. 在页面某处嵌入嵌入一个文件
      2. 文件必须可使用访问
      3. 必须保证新和成的jsp文件符合jsp语法规则
      4. Tomcat4中,被嵌入的文件不能使用page指令contentType属性
  3. JSP动作标记
    1. include动作标记
      1. <jsp:include page="文件的url”/>
      2. <jsp:include page="文件的url”>  param 子标记  <j/sp:include>
      3. 没有子标记时,必须使用第一种
      4. 与进后台插入的include不同
        1. 动态的插入,在jsp文件编译时候不直接合并编译,而是在jsp文件运行时后才包含进来
        2. 如果文件是普通文本文件时,就将文件内容发送到用户端,由浏览器负责显示
        3. 如果是jsp文件则由jsp引擎执行后发送结果到用户端,浏览器负责显示
        4. 被处理文件在逻辑和语法都独立于当前jsp页面
    2. param动作标记
      1. 以键值对的方式为其他标记提供附加信息
      2. 不能单独使用,需要配合上面include
      3. <jsp:param name="名字“ value=”指定给param的值“>
      4. 跟随include文件,将键值对传递过去
      5. 被加载jsp文件可使用request对象进行接收 request.getParameter()
      6. 也就是可以在一个页面,利用include动态标记中使用,将param的键值对传递到指定页面,那个页面计算后生成一个(结果)页面,再把这显示的东西返回到原页面中
    3. forward动作标记
      1. 停止当前页面执行,转向page指向的页面
      2. <jsp:forward page="要转向的页面" />
      3. <jsp:forward page="要转向的页面" > param标记 </jsp:forward>
      4. 尽管用户看见的是跳转后的页面,但是地址栏依然是转向前的链接
    4. useBean动作标记
      1. 负责存储数据
 
 

jsp课堂笔记2的更多相关文章

  1. jsp课堂笔记5 Java servlet

    servlet的创建 servlet类就是一个包含javax.servlet.http包中的HttpServlet类 部署web.xml文件 在<sevlet>标签中创建 <serv ...

  2. jsp课堂笔记4 javabean

    Javabean是一个可重复使用的软件组件,实际上是一种java类 实现代码重复利用 易编写易维护易使用 jsp页面的主要任务是显示页面,不负责数据的逻辑业务处理 将数据处理过程中指派一个或多个bea ...

  3. jsp课堂笔记3

    Http协议是一种无状态协议,一个用户向服务器发出请求(request),然后服务器返回响应(response),在服务端不保留链接相关信息.session对象可以使服务器记住当前用户   reque ...

  4. jsp课堂笔记1

    http协议:规范浏览器和服务器交互或通信的规则 https:基于http实现,比http更加安全,提供了身份验证和通信内容加密  服务器:1.配置比较高的电脑  2.他就是一个应用 http1.0: ...

  5. JSP学习笔记

    JSP学习笔记 Jsp网页主要分为Elements与Template Data两部分. Template Data:JSP Container不处理的部分,例如HTML内容 Elements:必须经由 ...

  6. JSP学习笔记(三):简单的Tomcat Web服务器

    注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...

  7. 九章算法系列(#3 Binary Tree & Divide Conquer)-课堂笔记

    前言 第一天的算法都还没有缓过来,直接就进入了第二天的算法学习.前一天一直在整理Binary Search的笔记,也没有提前预习一下,好在Binary Tree算是自己最熟的地方了吧(LeetCode ...

  8. 九章算法系列(#5 Linked List)-课堂笔记

    前言 又是很长时间才回来发一篇博客,前一个月确实因为杂七杂八的事情影响了很多,现在还是到了大火燃眉毛的时候了,也应该开始继续整理一下算法的思路了.Linked List大家应该是特别熟悉不过的了,因为 ...

  9. 九章算法系列(#4 Dynamic Programming)-课堂笔记

    前言 时隔这么久才发了这篇早在三周前就应该发出来的课堂笔记,由于懒癌犯了,加上各种原因,实在是应该反思.好多课堂上老师说的重要的东西可能细节上有一些急记不住了,但是幸好做了一些笔记,还能够让自己回想起 ...

随机推荐

  1. Python3-socketserver模块-网络服务器框架

    Python3中的socketserver模块简化了编写网络服务器的任务 在实际的开发中,特别是多并发的情况下,socket模块显然对我们的用处不大,因为如果你要通过socket模块来实现并发的soc ...

  2. 2020_06_18Mysql事务

    1.事务的基本介绍 1.概念:一个包含多个步骤的事务,被事务管理,要么同时成功,要么同时失败. 2.操作: 2.1 开启事务:start transaction; 2.2 回滚:rollback; 2 ...

  3. python文件处理-将图像根据坐标切割成若干小图

    代码涉及到:遍历目标路径,选取csv后缀的文件,遍历csv每一行,读取坐标,用cv操作图片 # !/usr/bin/python # -*- coding: UTF- -*- import panda ...

  4. Electron 初识-搭建一个简易桌面应用

    Electron ​ 快速入门 简介 Electron 可以让你使用纯 JavaScript 调用丰富的原生 APIs 来创造桌面应用.你可以把它看作是专注于桌面应用而不是 web 服务器的,io.j ...

  5. 痞子衡嵌入式:轻松为i.MXRT设计更新Segger J-Link Flash下载算法文件

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是为i.MXRT设计更新Segger J-Link Flash下载算法文件. 想要在Flash中调试,基本是离不开Flash下载算法的,毕 ...

  6. 【一】美化Linux终端之oh-my-zsh开源项目

    目录 1.查看系统是否装了zsh 2.安装zsh(系统没有查到zsh,则安装) 3.切换shell为zsh 4.重启Linux 5.安装oh my zsh 6.到此就安装完成 7.更换主题 8.生效主 ...

  7. 多线程01-CAS (CompareAndSwap)

    1.基本概念 原子性是不可中断的最小操作:在Java中,一般通过加锁或者自旋CAS方式来确保原子操作: 而CAS(compareAnd swap)作为Java中常用的保证原子性的手段,JDK1.5之后 ...

  8. Hexo学习

    01.安装 Node.js 打开官方网站 https://nodejs.org 267b6d6d335cf62907c70321a1cbd3b 安装步骤非常简单,一直next,下一步就可以了,默认安装 ...

  9. day23 作业

    day23 作业 目录 day23 作业 1.把登录与注册的密码都换成密文形式 2.文件完整性校验(考虑大文件) 3.注册功能改用json实现 4.项目的配置文件采用configparser进行解析 ...

  10. SpringBoot系列之前后端接口安全技术JWT

    @ 目录 1. 什么是JWT? 2. JWT令牌结构怎么样? 2.1 标头(Header) 2.2 有效载荷(Playload) 2.3 签名(Signature) 3. JWT原理简单介绍 4. J ...