千家信息网

JSP常见面试题有哪些

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要为大家展示了"JSP常见面试题有哪些",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"JSP常见面试题有哪些"这篇文章吧。1:什么是Jsp?Jav
千家信息网最后更新 2026年11月03日JSP常见面试题有哪些

这篇文章主要为大家展示了"JSP常见面试题有哪些",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"JSP常见面试题有哪些"这篇文章吧。

1:什么是Jsp?

Java Server Page 结合 java和html在服务端动态生成web页面的技术

2:描述Jsp页面的运行过程?

第一步:

请求进入Web容器,将JSP页面翻译成Servlet代码

第二步:

编译Servlet代码,并将编译过的类文件装入Web容器(JVM)环境

第三步:

Web容器为JSP页面创建一个Servlet类实例,并执行jspInit方法

第四步:

Web容器为该JSP页面调用Servlet实例的_jspService方法;将结果发送给用户

3:描述Jsp页面的五类脚本元素的功能、写法、并示例

注释  <%--    --%>:        <%-- scripting element --%>    指令标记  <%@   %> 指令标记影响JSP页面的翻译阶段:        <%@ page session="false" %>  声明标记  <%!   %> 声明标记允许JSP页面开发人员包含类级声明: <%! public static final String DEFAULT_NAME = "World"; %>  脚本标记  <%    %> 脚本标记允许JSP页面开发人员在_jspService方法中包含任意的Java代码: <% int i = 0; %>  表达式标记 <%= %>  表达式标记封装Java运行时的表达式,其值被送至HTTP响应流:  Ten is <%= (2 * 5) %>

4:描述Jsp页面中的注释种类和写法

HTML注释

JSP页面注释

<%-- JSP注释只在JSP代码中可见,不显示在servlet代码或响应中。--%>

Java注释

<%

/* Java注释显示在servlet代码中,不显示在响应中

*/

%>

5:描述Jsp页面的指令标记的功能、写法、并示例

指令标记影响JSP页面的翻译阶段

<%@ page session="false" %>

<%@ include file="incl/copyright.html" %>

<%@ taglib %>

6:描述Jsp页面的声明标记的功能、写法、并示例

声明标记允许JSP页面开发人员包含类级声明

写法:

<%! JavaClassDeclaration %>

例: <%! public static final String DEFAULT_NAME = "World"; %> <%! public String getName(HttpServletRequest request) {                 return request.getParameter("name");     } %> <%! int counter = 0; %>

7:描述Jsp页面翻译成Servlet的规则

jsp中的注释标记被翻译成Servlet类中的注释

jsp中的指令标记被翻译成Servlet类中的import语句等

jsp中的声明标记被翻译成Servlet类中的属性

jsp中的脚本标记被转移到Servlet类中service方法中的代码

jsp中的表达式标记被翻译成Serlvet类中的write()或者print()方法括号中的代码

8:描述Jsp页面的九个预定义变量的功能、用法、并示例

request 与请求相关的HttpServletRequest对象

response 与送回浏览器的响应相关的HttpServletResponse对象

out 与响应的输出流相关的JspWriter对象

session 与给定用户请求会话相关的HttpSession对象,该变量只在JSP页面参与一个HTTP会话时有意义

Applicationn 用于Web应用的ServletContext对象

config 与该JSP页面的servlet相关的ServletConfig对象

pageContext 该对象封装了一个JSP页面请求的环境

page 该变量与Java编程语言中的this变量等价

exception 由其它JSP页面抛出的Throwable对象,该变量只在"JSP错误页面"中可用

9:page指令的功能,写法、并示例,并描述它的如下属性的功能和用法:import、session、buffer、errorPage、isErrorPage、ContentType、pageEncoding

import : import 定义了一组servlet类定义必须导入的类和包,值是一个由逗号分隔的完全类名或包的列表。

session : session 定义JSP页面是否参与HTTP会话,值可以为true(缺省)或false。

buffer : buffer 定义用于输出流(JspWriter对象)的缓冲区大小,值可以为none或Nkb,缺省为8KB或更大。

errorPage: 用来指定由另一个jsp页面来处理所有该页面抛出的异常

isErrorPage : 定义JSP页面为其它JSP页面errorPage属性的目标,值为true或false(缺省)。

ContentType : 定义输出流的MIME类型,缺省为text/html。

pageEncoding :定义输出流的字符编码,缺省为ISO-8859-1

10:描述MVC各部分的功能?

Model

封装应用状态

响应状态查询

暴露应用的功能

Controller

验证HTTP请求的数据

将用户数据与模型的更新相映射

选择用于响应的视图

View

产生HTML响应

请求模型的更新

提供HTML form用于用户请求

11:什么是Model 1结构,以及结构中各部分的功能

Model1中使用jsp来处理web应用中的视图控制部分

jsp+javabean

12:什么是JavaBean?

用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用java代码

创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其

他JavaBean、applet程序或者应用来使用这些对象。

13:JavaBean的规则?

使用get和set方法定义属性

一个无参构造方法

无public实例变量

14:什么是jsp标准动作?包含那些?分别都是什么功能?如何使用?

JSP页面中使用类似于XML的标记表示运行时的动作

jsp:userBean

jsp:setProperty

jsp:getProperty

jsp:parameter

jsp:include

jsp:forward

15:用代码示例如下标准动作的使用:useBean、getProperty、setProperty

  

16:描述说明Bean的四种scope

Request

Session

Application

Page

17:描述说明页面上的字段和Bean中属性的对应规则

id 指javabean的变量名

class指javabean类的全路径

scope指javabean的应用范围

name指所用到的javabean的变量名

property指javabean中的属性

18:描述useBean动作的处理过程

使用id声明变量

试图在指定的范围内查找对象

如果没找到

创建一个类的实例

执行useBean标记体初始化对象

如果找到

将对象转换为类指定的类型

19:描述forward动作的功能

使用脚本代码处理请求时,可用jsp:forward 动作产生一个不同的视图,

使用同一个request:

20:什么是Model 2结构,以及结构中各部分的功能

jsp+javabean+servlet

Model 2架构使用MVC模式,JSP页面充当视图,Servlet充当控制器

Servlet控制器:

验证HTML form数据

调用模型中的业务服务

存储请求(或会话)范围内的域对象

选择下一个用户的视图

JSP页面视图:

使用用户界面(在HTML中)

访问域对象

21:如何获得分发器?分发器的功能?

上下文对象中的分发器:

ServletContext context = getServletContext();RequestDispatcher servlet = context.getNamedDispatcher("MyServlet");servlet.forward(request, response);

请求对象中的分发器:

RequestDispatcher view = request.getRequestDispatcher("tools/nails.jsp");view.forward(request, response);

可以将请求转发到另一个jsp页面

当从客户端发出请求到a 是request(1),a再请求b是request(2)就变成两个不同的请求,用RequestDispatcher来保持原来的请求(在不同的servlet之间保持同一个请求时用RequestDispatcher)

RequestDispatcher   rd  =  request.getRequestDispatcher("string");rd.forword(request);//前往下一个请求 到下一个servlet

22:描述Jsp中引入另外页面的两种方法?

<%@ include%>

23:比较上述两种方法的特点

<%@ include%> 再编译期间把另一个页面完全嵌入这个页面,可以说是一个页面

在这里可以共享变量

动态的再运行期间把另一个页面加入这个页面,可以说是两个页面,不可以共享变量

24:什么是自定义标记

自定义标记库是一个Web组件,

包括:

一个标记库描述符文件

所有相关的标记处理器类

25:描述使用自定义标记的步骤,以及每步详细的工作

1.自定义标记遵循XML标记规则

自定义标记使用XML规则;

标记名属性,以及前缀都是大小写敏感;

标记嵌套规则;

2.需要在JSP页面和Web应用程序的部署描述符中声明标记库:

taglib

在部署描述符中使用taglib元素声明web应用程序使用一个标记库;

在jsp页面中使用taglib指令表明要使用哪个标记库及相应的自定义标记所使用的前缀;

使用自定义的空标记

使用自定义的条件标记

使用自定义的迭代标记

3.在JSP页面中可使用自定义的空标记

getPepParam()标记:将命名的请求标志插入的输出中;

4.在JSP页面中使用自定义标记,可有条件地执行HTML响应的某部分

heading标记:生成一个隐藏的Html table创建一个彩色且格式化过的页表头

5.在JSP页面中使用自定义标记,可迭代执行HTML响应中的某部分:

IterateOverErrors标记:对stutas中的所有异常现象进行迭代;

taglib

1.把类烤过去

2.把Taglib的描述文件(*.tld)放在web-inf根目录下

3.在web.xml里配置

4.回到页面去,定义Taglib使用的前缀

5.直接使用,一定要结尾;

以上是"JSP常见面试题有哪些"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

页面 标记 对象 功能 变量 代码 方法 注释 应用 属性 指令 用户 写法 动作 示例 规则 视图 部分 处理 脚本 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 华服互联网科技靠谱吗 江苏根荣互联网科技 科技与互联网 互联网金融公司科技 广西互联网科技公司 成都仁贤领冠互联网科技有限公司 济南和联互联网科技有限公司 北京三清互联网科技 金融科技与互联网金融相同和不同 栖莱科技互联网股份有限公司 中国互联网十大科技股排名 乌苏新华互联网科技做什么的 智帮互联网科技公司最近动向 雨阳互联网卡科技有限公司 互联网科技资金流入 南京一网一红互联网科技有限公司 信承诺互联网科技有限公司 长沙渺峰互联网科技有限公司 互联网领先科技活动 互联网科技创业有什么好项目 厦门中拓互联网络科技有限公司 互联网科技会 互联网科技未来 互联网 科技 猪兼强互联网科技 智慧科技互联网 郑州华宇互联网科技 苏州铭阳互联网科技有限公司 为客找房互联网科技公司怎么样 卡尔迅互联网科技有限公司
0