Jsp

JSP

执行流程:

jsp- java(Servlet文件) -class

第一次访问:服务端将jsp翻译成java,再将Java编译成class文件

第二次: 直接访问访问class文件

如果服务端代码修改,将会在访问时重新翻译、编译。

存放在Tomcat的work/Catalina/localhost/项目名/org/apache/jsp/文件夹下

Jsp和Servlet可以互相转换

因为第一次请求服务端 会有翻译 和编译的过程, 因此比较慢; 后续访问 可以直接访问class,因此速度较快。 但是 如果 服务端修改了代码, 则再次访问的时候会重新翻译、编译。

Eclipse 创建的Web项目:

浏览器可以直接访问WebContent中的文件,但是WEB-INF的文件 无法通过客户端(浏览器 )直接访问,只能通过请求转发来访问

并不是 任何的内部跳转都能访问WEB-INF; 原因是 跳转有2中方式: 请求转发、重定向

配置tomcat运行时环境

jsp<->Servlet

  1. 将tomcat/lib中的servlet-api.jar加入项目的构建路径
  2. 右键项目->Build Path -> Add library -> Server Runtime

统一字符集编码

  1. 编码分类:

    1. 设置jsp文件的编码:(jsp文件中的pageEncoding属性) jsp->java

    2. 设置浏览器读取jsp文件的编码(jsp文件中的content属性)

      一般将上述设置成 一致的编码, 推荐使用UTF-8

    3. 文本编码:

      1. 将整个eclipse中的文件 统一设置
      2. 设置 某一个项目
      3. 设置单独文件

JSP的页面元素

HTML、java代码(脚本Scriptlet)、指令、注释

  • 脚本Scriptlet

    • <%

      ​ 局部变量、java代码

      %>

    • <%!

      ​ 全局变量、定义方法

      %>

    • <%= 输出表达式 =%>

  • 指令

    • page指令: <%@ page ...%>

    page指定的属性:

    language: jsp页面使用的脚本语言

    import:导入的类

    pageEncoding:jsp文件自身编码 jsp->java

    contentType: 浏览器解析jsp编码

  • 注释

    • html注释 , 可以被客户通过浏览器查看源码所观察到
    • java注释// /* */
    • jsp注释 <%-- --%>

JSP九大内置对象

自带的,不需要new,也能使用的对象

  1. out : 输出对象, 向客户端输出内容

  2. pageContext

  3. request: 请求对象; 存储"客户端向服务器端发送的请求信息"

    request对象常见的方法:	
    
    1. String getParameter(String name): 根据请求的字段名key, 返回字段值Value
    2. String[] getParameterValues(String name):根据请求的字段名key, 返回多个字段值Value (checkbox)
    3. void setCharacterEncoding("编码格式utf-8");设置请求编码
    4. getRequestDispatcher("b.jsp").forward(request,response); 请求转发 的方式跳转页面 A->B
    5. ServletContext getServletContext:获取项目的ServletContext对象
  4. response

  5. session

  6. application

  7. config

  8. page

  9. exception

posted @ 2020-11-18 09:19  李0v0健  阅读(214)  评论(0)    收藏  举报