一,JSP的基本语法

  • 指令
    代表当前页面的属性设置
    conentType:页面的内容的类型 text/html; charset=utf-8
    import:导入要用到的包
    import:导入要用到的包
  • 静态代码
    指的页面中的所有静态代码(html\css\js\图片)
  • 小脚本
    小脚本就是在页面中的多段java代码。
    <%
         代码块
    %>
  • 表达式
    类似于输出语句,能够将内容输出到页面
    <%=java代码%>
  • 声明
    html注释:在客户端是能够被看到的<!-->
    jsp注释:无法在客户端是能够被看到的<%--  --%>

二,jsp的运行机制

 运行流程:

1. 在客户端第一次请求时,先对JSP进行翻译

2. 形成“JAVA”文件,之后会对java文件编译成为”.class“文件

3. 最后会执行。

4. JSP在第一次执行时,速度较慢,从第二 次开始,就会直接使用已经编译好的.class运行,所以性能能够提升。

5. 如果对JSP中的配置进行了修改,那么服务器一定要重启!

三,常见的问题

1. 404问题:

服务器未启动

页面名称输入错误

文件夹可能配置问题

将页面放置在了WEB-INF目录,该目录是一个系统的配置目录,所以不能够随意访问

web应用未部署

2. 500问题:

服务器中代码出错了,可以查看页面的错误信息结合idea中输出的信息判断错误点。

JSP的内置对象

JSP中一共包含9个内置对象,最大的特点就是能够 直接使用,而无需使用者手动实例化。实例化的过程被 web容器完成了。

  • page(指向当前页面的一个内部对象) 代表当前页面的对象。
  • pageContext(作用域范围)是四个作用域其中之一,作用范围只在当前的页面中。
  • out 内容输出。
  • config 做页面中对应Servlet的配置。
  • exception 处理页面中的异常信息。
  • request 该对象主要处理客户端的请求,代表一次请求。
  • response
    sendRedirect(String location) 重定向。可以通过浏览器,重定向到某个 位置(当前服务器、外部的站点资源)
    setCharacterEncoding(String str) 设置响应的编码格式
  • session 代表一次会话。包含以下常用方法:
    setAttribute(String key,Object value)
    getAtrribute(String key)
    removeAttribute(String key)
    invalidate()
    setMaxInactiveInterval(int value)
    getMaxInactiveInterval
    getId
  • application
    应用级范围对象。 能够实现用户的数据共享。通 常情况下,用于服务器的名称、logo等基本上一 成不变的情境下。

四,转发于重定向的区别。

转发:

URL地址是不变的。内部资源完成一个跳转过程

能够通过request实现带值跳转。

请求发起后,跳转到目标过程只发起一次请求

请求跳转速度又有是在站内,所以速度也比较快。

重定向:

URL地址会发生改变。由浏览器发起两次请求,第一次是请求的目标(30x),第二次会有浏览器跳转到目标页面,该过程是一个重定向的过程。

不能够通过request实现带值跳转。

由于两次跳转,所以速度相比较转发稍慢。