08-jsp
Posted 亿钱君
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了08-jsp相关的知识,希望对你有一定的参考价值。
jsp
- 1.什么是 jsp,它有什么用?
- 2.jsp 的本质是什么。
- 3.jsp 的三种语法
- 4 jsp 九大内置对象
- 5 jsp 四大域对象
- 6 jsp 中的 out 输出和 response.getWriter 输出的区 别
- 7 jsp 的常用标签
1.什么是 jsp,它有什么用?
- jsp 的全称是 java server pages。Java 的服务器页面。
- jsp 的主要作用是代替 Servlet 程序回传 html 页面的数据。
- 因为 Servlet 程序回传 html 页面数据是一件非常繁锁的事情。开发成本和维护成本都极高。
-
上面的代码我们不难发现。通过 Servlet 输出简单的 html 页面信息都非常不方便。
-
所以 sun 公司推出一种叫做 jsp 的动态页面技术帮助我们实现对页面的输出繁锁工作
1.1 如何创建 jsp 的页面?
输入文件名敲回车即可!!
1.2 jsp 如何访问:
2.jsp 的本质是什么。
-
jsp 页面本质上是一个 Servlet 程序
-
当我们第一次访问 jsp 页面的时候。Tomcat 服务器会帮我们把 jsp 页面翻译成为一个 java 源文件。并且对它进行编译成 为.class 字节码程序。我们打开 java 源文件不难发现其里面的内容是:
-
我们跟踪原代码发现,HttpJspBase 类。它直接地继承了 HttpServlet 类。也就是说。jsp 翻译出来的 java 类,它间接了继 承了 HttpServlet 类。也就是说,翻译出来的是一个 Servlet 程序
3.jsp 的三种语法
3.1 jsp 头部的 page 指令
- language 属性: 表示 jsp 翻译后是什么语言文件。暂时只支持 java
- contentType 属性 表示 jsp 返回的数据类型是什么。也是源码中 response.setContentType()参数值
- pageEncoding 属性 表示当前 jsp 页面文件本身的字符集。
- import 属性 跟 java 源代码中一样。用于导包,导类。
两个属性是给 out 输出流使用
- autoFlush 属性 设置当 out 输出流缓冲区满了之后,是否自动刷新冲级区。默认值是 true。
- buffer 属性 设置 out 缓冲区的大小。默认是 8kb
-
errorPage 属性 设置当 jsp 页面运行时出错,自动跳转去的错误页面路径(相当于跳转去另外的页面)
未设置errorPage属性前
设置errorPage属性后
-
isErrorPage 属性 设置当前 jsp 页面是否是错误信息页面。默认是 false。如果是 true 可以 获取异常信息。
-
session 属性 设置访问当前 jsp 页面,是否会创建 HttpSession 对象。默认是 true。
-
extends 属性 设置 jsp 翻译出来的 java 类默认继承谁。
3.2 jsp 中的常用脚本
3.2.1 声明脚本(极少使用)
- 声明脚本的格式是: <%! 声明 java 代码 %>
- 作用:可以给 jsp 翻译出来的 java 类定义属性和方法甚至是静态代码块。内部类等
练习:1、声明类属性 2、声明 static 静态代码块 3、声明类方法 4、声明内部类
声明脚本代码翻译对照:
3.2.2 表达式脚本(常用)
- 表达式脚本的格式是:<%=表达式%>
- 表达式脚本的作用是:在 jsp 页面上输出数据。
Tomact后找到生成的java文件和编译后的文件:
.java文件下_jspService()方法
表达式脚本的特点:
- 1、所有的表达式脚本都会被翻译到_jspService() 方法中
- 2、表达式脚本都会被翻译成为 out.print()输出到页面上
- 3、由于表达式脚本翻译的内容都在_jspService() 方法中,所以_jspService()方法中的对象都可以直接使用。
- 4、表达式脚本中的表达式不能以分号结束
3.2.3 代码脚本
举例:if语句
翻译之后的对比:
举例;多个代码脚本组合成一个完整的java语句
举例:代码脚本和表达式脚本组合,在jsp页面输出
3.3 jsp 中的三种注释
4 jsp 九大内置对象
jsp 中的内置对象,是指 Tomcat 在翻译 jsp 页面成为Servlet 源代码后,内部提供的九大对象,叫内置对象。
5 jsp 四大域对象
6 jsp 中的 out 输出和 response.getWriter 输出的区 别
response 中表示响应,我们经常用于设置返回给客户端的内容(输出) out 也是给用户做输出使用的
由于 jsp 翻译之后,底层源代码都是使用 out 来进行输出,所以一般情况下。我们在 jsp 页面中统一使用 out 来进行输出。避 免打乱页面输出内容的顺序。
7 jsp 的常用标签
jsp 静态包含
jsp 动态包含
jsp 标签-转发
以上是关于08-jsp的主要内容,如果未能解决你的问题,请参考以下文章