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. Python 简明教程 --- 14,Python 数据结构进阶

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果你发现特殊情况太多,那很可能是用错算法了. -- Carig Zerouni 目录 前几节我们介 ...

  2. 记一次发布/更新npm包的过程及包版本管理

    您可以发布包含package.json文件的任何目录.这里如何首次发布程序包以及如何在以后更新程序包. 如何发布包 制备 了解npm政策 在开始之前,如果您对网站礼仪,命名,许可或其他指南有疑问,最好 ...

  3. asp.net 修饰符介绍(关于public、private、protected、internal)

    1.private修饰符 private修饰符用于设置类或类成员的访问权限仅为所属类的内部,private也被称为私有修饰符.某些时候需要访问私有类成员时,可通过get和set访问器读取或修改. 2. ...

  4. SQL中的ON DUPLICATE KEY UPDATE使用详解

    一:主键索引,唯一索引和普通索引的关系主键索引 主键索引是唯一索引的特殊类型. 数据库表通常有一列或列组合,其值用来唯一标识表中的每一行.该列称为表的主键. 在数据库关系图中为表定义一个主键将自动创建 ...

  5. Linux中清空docker容器日志

    新建文件docker-clear-log,放在/usr/local/bin/目录下,文件内容如下: #!/bin/bash -e if [[ -z $ ]]; then echo "No c ...

  6. Redis为何是单线程的

    以前一直有个误区,以为:高性能服务器 一定是 多线程来实现的 原因很简单因为误区二导致的: 多线程 一定比 单线程 效率高.其实不然. redis 核心就是 如果我的数据全都在内存里,我单线程的去操作 ...

  7. Golang从合并链表聊递归

    从合并链表聊递归 递归是工程师最常见的一种解决问题的方式,但是有时候不容易真正掌握.有人说是看起来很简单,自己写起来会费点劲. 最著名的例子就是斐波那契数列(Fibonacci sequence),通 ...

  8. 【git】配置git命令行别名

    引言:由于有些git命令较长,记起来比较麻烦,为了git工具使用的方便,为命令行取别名有很大的必要. 1.在家目录添加.gitconfig文件. 此文件在创建git仓库时,一般是没有的,需要手动添加. ...

  9. 区间dp(低价回文)

    [题目大意] 追踪每头奶牛的去向是一件棘手的任务,为此农夫约翰安装了一套自动系统.他在每头牛身上安装了一个电子身份标签,当奶牛通过扫描器的时候,系统可以读取奶牛的身份信息.目前,每个身份都是由一个字符 ...

  10. 集训之各种dp

    1.线性 「BZOJ1609」麻烦的聚餐 分别求一遍连续非下降/上升子序列长度,用总长减去,取最小值即可,主要\(O(n^2)\)优化 Code #include <cstdio> #in ...