JSP相关问题合集

问题一:什么是JSP页面?

JSP(Java Servlet Pages)是java开发的专门用于动态页面显示的技术。jsp编译时,会首先编译成servlet文件,然后编译成class文件。可以说JSP是Servlet的一种特殊表现形式,本质还是Servlet。

包含九大内置对象:response、request、execption、out、application、pagecontext、config、session 、page。

四个域对象:request、pagecontext、session、application。

 

问题二:JSP请求是如何被处理的?

客户端通过浏览器发送jsp请求,服务器接受到请求后,判断是否是第一次请求该页面,或者该页面是否改变,若是,服务器将执行将jsp页面 翻译 成servlet(.java)文件,JVM将servlet 编译 为  .class  文件,字节码文件加载到服务器内存上执行,服务器将处理结果以  .html  页面的形式返回给客户端。若该页面不是第一次请求,则省略翻译和编译的步骤,直接执行显示。

 

问题三 :JSP有何优点?

  1. JSP页面时被动态编译成为servlet的,因此,开发者可以很容易的更新展现代码。
  2. JSP页面可以被预编译。
  3. JSP页面可以很容易的和静态模板结合,包括HTML和XML,也可以很容易的和产生动态内容的代码结合起来。
  4. 开发者可以提供页面设计者以类XML格式来访问的自定义的JSP标签库。
  5. 开发者可以在组件层做逻辑上的改变,而不需要编辑单独使用了应用层逻辑的页面。

 

问题四:什么是JSP指令(Directive)?JSP中有哪些不同类型的指令?

Directive是当JSP页面被编译成Servlet的时候,JSP引擎要处理的指令。Directive用来设置页面级别的指令,从外部文件插入数据,指定自定义的标签库。Directive是定义在 <%@ 和 %>之间的。下面列出了不同类型的Directive:

 

  • 包含指令(Include directive):用来包含文件和合并文件内容到当前的页面。
  • 页面指令(Page directive):用来定义JSP页面中特定的属性,比如错误页面和缓冲区。
  •         taglib指令: 用来声明页面中使用的自定义的标签库

语法格式如下:

<%@ directive attribute="value" %>

指令可以有很多的属性,他们以键值对的形式存在,并用逗号隔开

JSP中的三种指令标签:

指令

描述

<%@ page .... %>定义网页依赖属性,比如脚本语言,error页面、缓存需求等等。。。。
<%@ include .... %>包含其他文件
<%@ taglib .....  %>引入标签库的定义

问题五:什么是JSP动作(JSP action)?

JSP动作以XML语法的结构来控制Servlet引擎的行为。当JSP页面被请求的时候,JSP动作会被执行。它们可以被动态的插入到文件中,重用JavaBean组件,转发用户到其他的页面,或者是给Java插件产生HTML代码。下面列出了可用的动作:

  • jsp:include-当JSP页面被请求的时候包含一个文件。
  • jsp:useBean-找出或者是初始化Javabean。
  • jsp:setProperty-设置JavaBean的属性。
  • jsp:getProperty-获取JavaBean的属性。
  • jsp:forward-把请求转发到新的页面。
  • jsp:plugin-产生特定浏览器的代码。

链接:https://www.nowcoder.com/questionTerminal/43c79e3bbf2d4a32bfde229e542a86e6
来源:牛客网

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值