java的内置对象的区别_JavaWeb学习笔记二:jsp基础、内置对象、三种注释、内置指令,静态包含和动态包含的区别,jsp和Servlet的桥梁...

文章目录

1. jsp基础知识学习

1.1. jsp三种注释

1.2. jsp脚本

1.3. jsp指令学习

1.4. web.xml配置错误页面

1.5. jsp九大内置/隐式对象

1.5.1. out对象

1.5.2. pageContext对象

2. 四大域对象总结

3. 面试题---静态包含和动态包含

4. 请求转发

1. jsp基础知识学习

1.1. jsp三种注释

html注释

java注释// 或者 /* */

jsp注释

1.2. jsp脚本

该内部的java代码翻译到service方法内部。

会翻译成service方法内部out.print()

会被翻译成servlet成员的内容。

1.3. jsp指令学习

page指令,属性最多,不过了解即可。

要用到include指令,这样做大大减少了代码量,并且改一处全部都会改。

taglib指令引入标签库

前缀:xxx>

1.4. web.xml配置错误页面

404error-code>

/error.jsplocation>

error-page>

1.5. jsp九大内置/隐式对象

​ request、response、config、out、exception、page、application、pageContext、session。所谓的内置对象就是jsp已经定义好了,直接可以用。

1.5.1. out对象

out的类型是JspWriter

out的作用是向客户端输出内容–out.write()。

jsp页面的三种输出方式:html、jsp内置对象调用输出、java输出

4c335fd1461c362f6ac6fd91420ab5fd.png

但是三者输出的顺序有些问题,可以看出c先输出,之后abd再输出。原因:

afe75c72803b4e7712991fe8eb8b1e7c.png

从图中可以看出其他三种的输出都是先放到write缓冲区中然后再放到response缓冲区中,而c直接进入了response缓冲区,故最先输出。out的缓冲区为buffer在page指令中可以设置大小,默认为8kb。如果设置为0kb那么输出直接到response缓冲区中。

1.5.2. pageContext对象

pageContext对象是一个域对象。

pageContext域对象有setAttribute(),getAttribute()等方法,还可以往其他域写内容。

78d0638a08aec6f6b27f7eb7f7bc9f2c.png

pageContext域对象的findAttribute(“name”)可以查找键,查找方式是先从小的域找再从大的域找。

page域pageContext域对象可以获得其他8大隐式对象

pageContext.getOut();

pageContext.getRequest()

2. 四大域对象总结

page域

当前jsp页面范围,若有两个jsp页面,第二个页面调用第一个页面就不行。

request域

一次请求,作用范围就是一次请求当中,请求关闭,request域也被清空。

session域

一次会话,作用范围属于当前客户端连接服务器的这个会话都属于这个范围,但是换了客户端就不行了。使用时要添加路径,否则会给服务器带来压力。

application域

整个web应用,可以获取整个web应用里面的键值。

3. 面试题—静态包含和动态包含

63ebda616eef135377b3356ea1d21e57.png

静态包含:

<%@ include file=”包含页面”%>

动态包含:

静态包含先将两个jsp组合成一个jsp文件然后生成java文件然后再编译生成.class文件

动态包含是一个jsp页面先生成java文件,然后再编译生成.class文件,然后再调取另一个jsp,再将其编译运行。

静态包含一般用于加载进页面显示后就再也不变的东西,比如页眉,背景,标题。

动态包含适用于加载经常变化的,要求显示最新版本内容的东西比如提交时间戳等

4. 请求转发

这是转发,url地址不会改变。

servlet主要是对数据进行处理,jsp主要用来将得到的数据显示到页面的,那么什么是连接servlet和jsp的关键点呢?就是转发技术,在Servlet转发,jsp通过域对象接收。这是一个重要思想。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值