考官紧张想考察一下你前端知识的基本功,与之同类的问题可能还会问一下四大浸染域以及OSI七层物理模型以及常用标签、浸染等根本知识。

(2)核心答案讲解:

1)request工具

jsp九大内置对象Java教程JSP的九年夜内置对象是什么JSP感化是什么 GraphQL

request 工具是 javax.servlet.httpServletRequest类型的工具。
该工具代表了客户真个要求信息,紧张用于接管通过HTTP协议传送到做事器的数据。
(包括头信息、系统信息、要求办法以及要求参数等)。
request工具的浸染域为一次要求。

2)response工具

response 代表的是对客户真个相应,紧张是将JSP容器处理过的工具传回到客户端。
response工具也具有浸染域,它只在JSP页面内有效。

3)session工具

session 工具是由做事器自动创建的与用户要求干系的工具。
做事器为每个用户都天生一个session工具,用于保存该用户的信息,跟踪用户的操作状态。
session工具内部利用Map类来保存数据,因此保存数据的格式为 “Key/value”。
session工具的value可以使繁芜的工具类型,而不仅仅局限于字符串类型。

4)application工具

application 工具可将信息保存在做事器中,直到做事器关闭,否则application工具中保存的信息会在全体运用中都有效。
与session工具比较,app ut 工具

out 工具用于在Web浏览器内输出信息,并且管理运用做事器上的输出缓冲区。
在利用 out 工具输出数据时,可以对数据缓冲区进行操作,及时打消缓冲区中的残余数据,为其他的输出让出缓冲空间。
待数据输出完毕后,要及时关闭输出流。

6)pageContext 工具

pageContext 工具的浸染是取得任何范围的参数,通过它可以获取 JSP页面的out、request、reponse、session、application 等工具。
pageContext工具的创建和初始化都是由容器来完成的,在JSP页面中可以直策应用 pageContext工具。

7)config 工具

config 工具的紧张浸染是取得做事器的配置信息。
通过 pageConext工具的 getServletConfig() 方法可以获取一个config工具。
当一个Servlet 初始化时,容器把某些信息通过 config工具通报给这个 Servlet。
开拓者可以在web.xml 文件中为运用程序环境中的Servlet程序和JSP页面供应初始化参数。

8)page 工具

page 工具代表JSP本身,只有在JSP页面内才是合法的。
page隐含工具实质上包含当前 Servlet接口引用的变量,类似于Java编程中的 this 指针。

9)exception 工具

exception 工具的浸染是显示非常信息,只有在包含 isErrorPage="true" 的页面中才可以被利用,在一样平常的JSP页面中利用该工具将无法编译JSP文件。
excepation工具和Java的所有工具一样,都具有系统供应的继续构造。
exception 工具险些定义了所有非常情形。
在Java程序中,可以利用try/catch关键字来处理非常情形; 如果在JSP页面中涌现没有捕获到的非常,就会天生 exception 工具,并把 exception 工具传送到在page指令中设定的缺点页面中,然后在缺点页面中处理相应的 exception 工具。

(3)问题扩展

Jsp四大浸染域及其浸染:

四个浸染域从大到小:appliaction>session>request>page

● application:全局浸染范围,全体运用程序共享.生命周期为:运用程序 启动到停滞;

● session:会话浸染域,当用户首次访问时,产生一个新的会话,往后服 务器就可以记住这个会话状态;

● request:要求浸染域,便是客户真个一次要求;

● page:一个JSP页面。

以上浸染范围使越来越小, request和page的生命周期都是短暂的,他 们之间的差异便是:一个request可以包含多个page页(include, forward)。

(4)结合项目中利用

举例:request工具

1)获取数据

getParameter;;吸收要求參数的,

2)对全部数据进行再编码

public byte[] getBytes(“encoding”)

例如以下实例将byte数组编码转换

<%@ page contentType="text/html";charset=gbk"%> <% //吸收内容 String name=request.getParameter("uname"); byte[] b=name.getBytes("ISO8859-1"); name=new String(b); String name= new String(request.getParameter("uname").getBytes("ISO8859-1")); %>

输入内容为:<%=name%>

3)设置统一的要求编码

public void setCharacterEncoding(String env) throws UnsunpportedEncodingException

例如以下设置

<%@ page contentType="text/html";charset=gbk"%> <% //吸收内容 request.setCharacterEncoding("GBK"); String name= request.getParameter("uname"); %>

输入内容为:<%=name%>

其他举例Demo:https://download.csdn.net/download/a_blackmoon/10940085