zoukankan      html  css  js  c++  java
  • jsp快速入门

    一、page指令

    <%@ page 属性名="属性值" 属性名="属性值" ...%>

    • language:声明jsp要被转译的语言,只能是java
    • import:声明转译的java文件要导入的包,不同的包使用逗号隔开
    • pageEcoding:设置jsp文件的数据编码格式
    • contentType="text/html;charset=utf-8"设置jsp数据响应给浏览器,浏览器的解析和编码格式。
    • session:设置转译servlet中是否开启session支持,默认开启,true表示开启,false表示关闭。
    • errorPage:设置jsp运行错误跳转的页面。
    • extends:设置jsp转译的java文件要继承的父类(包名+类名)

    作用:设置jsp文件转译相关的参数

    二、jsp的静态引入和动态引入

    优点:降低jsp代码的冗余,便于维护升级。

    静态引入

    <%@ include file="要引用文件名的相对路径" %>

    • 特点:将当前的jsp文件和引入的jsp文件转译成一个java文件使用。在网页也就显示了合并后的显示效果。
    • 注意:
      静态引入的jsp文件不会单独转译成java文件。
      当前文件和静态引入的jsp文件中不能够使用java代码块声明同名变量。

    动态引入

    <jsp:include page="要引入文件的相对路径"></jsp:include>

    • 特点:会将引入的jsp文件单独转译,在当前文件转译号的java文件中调用引入的jsp文件的转译文件,在网页中显示合并后的显示效果。
    • 注意:动态引入允许文件中声明同名变量。

    三、jsp的转发标签forward

    • 使用:
      <jsp:forward page="要转发的文件的相对路径"></jsp:forward>
    • 特点:一次请求,地址栏信息不改变
    • 注意:在转发标签的两个标签中间除了写<jsp:param value="" name="" />子标签不会报错,其他任意字符都会报错,包括空格

    四、jsp的内置对象

    jsp文件在转译成其对应的servlet文件的时候自动生成并声明的对象,在jsp页面可以直接使用

    • pageContext:页面上下文对象,封存了其他内置对象。封存了当前jsp的运行信息。每一jsp文件单独拥有一个pageContext对象。作用域为当前页面
    • request:封存当前请求数据的对象。有tomcat服务器创建。一次请求
    • session:此对象用来存储用户的不同请求的共享数据的。一次会话
    • application:也就是ServletContext对象,一个项目只有一个。存储用户共享数据的对象,以及完成其他操作。项目内
    • response:响应对象,用来响应请求处理结构给浏览器对象。设置响应头,重定向
    • out:响应对象,jsp内部使用。带有缓冲区的响应对象,效率高于response对象。
    • page:代表jsp的对象,相当于java中的this
    • excption:异常对象。存储了当前运行的异常信息。使用此对象需要在page指令中使用isErrorPage="true"开启
    • config:也就是ServletConfig,主要用来获取web.xml中的配置数据,完成一些初始化数据的读取

    五、四个作用域对象

    • pageContext:当前页面。解决了当前页面内的数据共享问题。获取其他内置对象
    • request:一次请求。一次请求的servlet的数据共享。将数据流转给下一个servlet
    • session:一次会话。一个用户的不同请求的数据共享。将数据从一次请求流转给其他请求。
    • application:项目内。不同用户的数据共享问题。将数据从一个用户流转给其他请求。

    六、jsp的路径

    1. 在jsp中资源路径可以使用相对路径完成跳转,但是:
      问题一:资源的位置不可随意更改
      问题二:需要使用../进行文件夹的跳出。使用比较麻烦。

    2. 使用绝对路径(必会):
      /虚拟项目名/资源项目路径
      在jsp资源中的第一个/表示的是服务器根目录,相当于localhost:8080

  • 相关阅读:
    剑指offer(14)链表中倒数第K个节点
    剑指offer(13)调整数组顺序使奇数位于偶数前面
    跨域资源共享CORS
    同源政策
    剑指offer(12)数值的整数次方
    剑指offer(11)二进制中1的个数
    面试金典——交点
    LeetCode——简化路径
    LeetCode——跳跃游戏 I-II
    LeetCode——最大矩形
  • 原文地址:https://www.cnblogs.com/ylcc-zyq/p/12547063.html
Copyright © 2011-2022 走看看