JSP—JSP简介(JSP语法、九大隐式对象、常用标签)

组合预测 | Python实现LSTM-XGBoost长短期记忆网络组合极限梯度提升树股票价格预测 组合预测 | Python实现LSTM-XGBoost长短期记忆网络和极限梯度提升树股票价格预测 阅读详情

1. JSP概述

1.1 认识JSP

1.1.1 JSP简介

JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比html而言,html只能为用户提供静态数据,而Jsp技术允许在页面中嵌套java代码,为用户提供动态数据。

1.1.2 JSP入门案例

在jsp页面中输出当前时间

在WebContent目录下建立一个1.jsp,写入以下内容:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>jsp入门(输出时间)</title>
</head>
<body>
	当前时间:
	<%
		Date date = new Date();
		out.write(date.toLocaleString());
	%>
	
</body>
</html>


在浏览器中地址栏输入:http://localhost:8080/day08/1.jsp,回车:


1.1.3 JSP原理简介

上面演示了一个JSP,现在思考几个问题:

1)Web服务器是如何调用并执行一个jsp页面的?

2)Jsp页面中的html排版标签是如何被发送到客户端的?

3)Jsp页面中的java代码服务器是如何执行的?

4)Web服务器在调用jsp时,会给jsp提供一些什么java对象?

回答:

1)首先我们要知道的是,在浏览器中访问Web应用中的任何资源,其实都是在访问一个Servlet,其实在访问1.jsp的时候,服务器会将1.jsp翻译成_1_jsp.java,我是用Eclipse建立的Web工程,我的_1_jsp.java的目录在“D:\eclipse\eclipse_work\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\work\Catalina\localhost\day08\org\apache\jsp”。


打开_1_jsp.java,发现它继承了org.apache.jasper.runtime.HttpJspBase类,这个类其实是HttpServlet的一个子类,所以_1_jsp其实是一个Servlet。

2)3)不管是html标签,还是java代码,其实都是在_1_jsp这个Servlet的_jspService()方法中使用调用了相关的代码。查看_1_jsp.java:


4)查看_1_jsp.java:


上面的都是可以直接使用的java对象,除此之外,还可以直接使用request和response。

1.1.4 JSP的最佳实践

不管是JSP还是Servlet,虽然都可以用于开发动态Web资源。但这由于这两门技术各自的特点,在长期的软件实践中,人们逐渐把Servlet作为Web应用中的控制组件来使用,而把JSP技术作为数据显示模板来使用。

其原因为,程序的数据通常需要美化后再输出:

1)让jsp既用java代码产生动态数据,又做美化导致页面难以维护。

2)让servlet既产生数据,又在里面嵌套html代码美化数据,同样也会导致程序可读性差,难以维护。

3)因此最好的办法是根据这两门技术的特点,让它们各自负责各的,Servlet只负责响应请求产生数据,并把技术通过转发技术带给jsp,数据的显示由jsp来做。

2. JSP语法

2.1 JSP模板元素

JSP页面中的HTML内容称之为JSP模版元素。

JSP模版元素定义了网页的基本骨架,即定义了页面的结构和外观。

2.2 JSP表达式

JSP脚本表达式(expression)用于将程序数据输出到客户端。

语法:<%= 变量或表达式 %>

举例:当前时间:<%= new java.util.Date() %>

JSP引擎在翻译脚本表达式时,会将程序数据转成字符串,然后在相应位置用out.print(…) 将数据输给客户端。

JSP脚本表达式中的变量或表达式后面不能有分号(;)。

2.3 JSP脚本片断

SP脚本片断(scriptlet)用于在JSP页面中编写多行Java代码。

语法:

<% 
多行java代码 
%> 


注意:

1)JSP脚本片断中只能出现java代码,不能出现其它模板元素, JSP引擎在翻译JSP页面中,会将JSP脚本片断中的Java代码将被原封不动地放到Servlet的_jspService方法中。

2)JSP脚本片断中的Java代码必须严格遵循Java语法,例如,每执行语句后面必须用分号(;)结束。

3)在一个JSP页面中可以有多个脚本片断,在两个或多个脚本片断之间可以嵌入文本、HTML标记和其他JSP元素。

举例:


多个脚本片断中的代码可以相互访问,犹如将所有的代码放在一对<%%>之中的情况。如:out.println(x);

4)单个脚本片断中的Java语句可以是不完整的,但是,多个脚本片断组合后的结果必须是完整的Java语句,例如:

<%
    for (int i=1; i<5; i++) {
		<H1>www.it315.org</H1>
%>
	<H1>www.it315.org</H1>
<%	}
%>


2.4 JSP声明

JSP页面中编写的所有代码,默认会翻译到servlet的_jspService方法中, 而Jsp声明中的java代码被翻译到

_jspService方法的外面。语法:

<%!
     java代码
%>


注意:

1)JSP声明可用于定义JSP页面转换成的Servlet程序的静态代码块、成员变量和方法 。

2)多个静态代码块、变量和函数可以定义在一个JSP声明中,也可以分别单独定义在多个JSP声明中。

3)JSP隐式对象的作用范围仅限于Servlet的_jspService方法,所以在JSP声明中不能使用这些隐式对象。

<%!
static 
{ 
	System.out.println("loading Servlet!"); 
}
private int globalVar = 0;
%>

2.5 JSP注释

JSP注释的格式:

<%-- 注释信息 --%>

JSP引擎在将JSP页面翻译成Servlet程序时,忽略JSP页面中被注释的内容。

2.6 JSP指令

JSP指令(directive)是为JSP引擎而设计的,它们并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分。在JSP 2.0规范中共定义了三个指令:page指令、Include指令和taglib指令。

JSP指令的基本语法格式:

<%@ 指令 属性名="值" %>

举例:<%@ page contentType="text/html;charset=gb2312"%>

如果一个指令有多个属性,这多个属性可以写在一个指令中,也可以分开写。例如:

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.util.Date"%>

也可以写作:

<%@ page contentType="text/html;charset=gb2312" import="java.util.Date"%> 

2.6.1 Page指令

page指令用于定义JSP页面的各种属性,无论page指令出现在JSP页面中的什么地方,它作用的都是整个JSP页面,为了保持程序的可读性和遵循良好的编程习惯,page指令最好是放在整个JSP页面的起始位置。

详见 jsp page指令详解

案例:使用page指令解决JSP中文乱码

JSP程序存在有与Servlet程序完全相同的中文乱码问题:
1)输出响应正文时出现的中文乱码问题 

2)读取浏览器传递的参数信息时出现的中文乱码问题

JSP引擎将JSP页面翻译成Servlet源文件时也可能导致中文乱码问题 :

1)JSP引擎将JSP源文件翻译成的Servlet源文件默认采用UTF-8编码,而JSP开发人员可以采用各种字符集编码来编写JSP源文件,因此,JSP引擎将JSP源文件翻译成Servlet源文件时,需要进行字符编码转换。

2)如果JSP文件中没有说明它采用的字符集编码,JSP引擎将把它当作默认的ISO8859-1字符集编码处理。

如何解决JSP引擎翻译JSP页面时的中文乱码问题:

1)通过page指令的contentType属性说明JSP源文件的字符集编码

2)page指令的pageEncoding属性说明JSP源文件的字符集编码

2.6.2 include

include指令用于引入其它JSP页面,如果使用include指令引入了其它JSP页面,那么JSP引擎将把这两个JSP翻译成一个servlet。所以include指令引入通常也称之为静态引入。 

语法:

<%@ include file="relativeURL"%>

其中的file属性用于指定被引入文件的路径。路径以“/”开头,表示代表当前web应用。

细节:

1)被引入的文件必须遵循JSP语法。

2)被引入的文件可以使用任意的扩展名,即使其扩展名是html,JSP引擎也会按照处理jsp页面的方式处理它里面的内容,为了见明知意,JSP规范建议使用.jspf(JSP fragments)作为静态引入文件的扩展名。

3)由于使用include指令将会涉及到2个JSP页面,并会把2个JSP翻译成一个servlet,所以这2个JSP页面的指令不能冲突(除了pageEncoding和导包除外)。

复习下之前学过的request的动态包含

静态包含和动态包含的区别:

静态包含发生在:JSP---->java文件阶段。动态包含发生在:执行class文件阶段。动态加入。

静态包含:只生成一个java文件,动态包含:生成多个class文件。

静态包含页面:  
 <%@include file="static.jsp" %><br>  
动态包含页面   
<jsp:include page="dynamic.jsp" flush="true"/> 

动态包含也可以使用:request.getRequestDispatcher("/dynamic.jsp").include(request, response)实现

2.6.3 taglib指令

Taglib指令用于在JSP页面中导入标签库。

3 JSP内置对象

JSP引擎在调用JSP对应的_jspServlet时,会传递或创建9个与web开发相关的对象供_jspServlet使用。JSP技术的设计者为便于开发人员在编写JSP页面时获得这些web对象的引用,特意定义了9个相应的变量,开发人员在JSP页面中通过这些变量就可以快速获得这9大对象的引用。

3.1 request对象

request 对象是 javax.servlet.httpServletRequest类型的对象。 该对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等)。request对象的作用域为一次请求。详情请看Servlet—HttpServletRequest

3.2 response对象

response 代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,它只在JSP页面内有效。详情请看Servlet—HttpServletResponse

3.3 session对象

session 对象是由服务器自动创建的与用户请求相关的对象。服务器为每个用户都生成一个session对象,用于保存该用户的信息,跟踪用户的操作状态。session对象内部使用Map类来保存数据,因此保存数据的格式为 “Key/value”。 session对象的value可以使复杂的对象类型,而不仅仅局限于字符串类型。详情请看Servlet—Session

3.4 application对象

application 对象可将信息保存在服务器中,直到服务器关闭,否则application对象中保存的信息会在整个应用中都有效。与session对象相比,application对象生命周期更长,类似于系统的“全局变量”。详情请看Servlet—ServletConfig、ServletContext

3.5 config 对象

config 对象的主要作用是取得服务器的配置信息。通过 pageConext对象的 getServletConfig() 方法可以获取一个config对象。当一个Servlet 初始化时,容器把某些信息通过 config对象传递给这个 Servlet。 开发者可以在web.xml 文件中为应用程序环境中的Servlet程序和JSP页面提供初始化参数。详情请看Servlet—ServletConfig、ServletContext

3.6page 对象

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

3.7 pageContext 对象

pageContext 对象的作用是取得任何范围的参数,通过它可以获取 JSP页面的out、request、reponse、session、application 等对象。pageContext对象的创建和初始化都是由容器来完成的,在JSP页面中可以直接使用 pageContext对象。详情请看JSP—九大隐式对象之pageContext

3.8 out 对象

out 对象用于在Web浏览器内输出信息,并且管理应用服务器上的输出缓冲区。在使用 out 对象输出数据时,可以对数据缓冲区进行操作,及时清除缓冲区中的残余数据,为其他的输出让出缓冲空间。待数据输出完毕后,要及时关闭输出流。详情请看JSP—九大隐式对象之out

3.9 exception 对象

exception 对象的作用是显示异常信息,只有在包含 isErrorPage="true" 的页面中才可以被使用,在一般的JSP页面中使用该对象将无法编译JSP文件。excepation对象和Java的所有对象一样,都具有系统提供的继承结构。exception 对象几乎定义了所有异常情况。在Java程序中,可以使用try/catch关键字来处理异常情况; 如果在JSP页面中出现没有捕获到的异常,就会生成 exception 对象,并把 exception 对象传送到在page指令中设定的错误页面中,然后在错误页面中处理相应的 exception 对象。


4 JSP常用标签

JSP标签也称之为Jsp Action(JSP动作)元素,它用于在Jsp页面中提供业务逻辑功能,避免在JSP页面中直接编写java代码,造成jsp页面难以维护。

<jsp:forward>

<jsp:forward>标签用于把请求转发给另外一个资源。

语法:<jsp:forward page="relativeURL | <%=expression%>" />

page属性用于指定请求转发到的资源的相对路径,它也可以通过执行一个表达式来获得。

<jsp:include>

<jsp:include>标签用于把另外一个资源的输出内容插入进当前JSP页面的输出内容之中,这种在JSP页面执行时的引入方式称之为动态包含。

语法:<jsp:include page="relativeURL | <%=expression%>" flush="true|false" />

page属性用于指定被引入资源的相对路径,它也可以通过执行一个表达式来获得。

flush属性指定在插入其他资源的输出内容时,是否先将当前JSP页面的已输出的内容刷新到客户端。

<jsp:param>

当使用<jsp:include>和<jsp:forward>标签引入或将请求转发给其它资源时,可以使用<jsp:param>标签向这个资源传递参数。

例如:

<jsp:include page="relativeURL | <%=expression%>">
		<jsp:param name="parameterName" value="parameterValue|<%= expression %>" />
	</jsp:include>


<jsp:param>标签的name属性用于指定参数名,value属性用于指定参数值。在<jsp:include>和<jsp:forward>标签中可以使用多个<jsp:param>标签来传递多个参数。


2026年数学建模国赛B题无线电干扰源的快速自动定位与清除 论文详细解析 数学建模竞赛论文无线电干扰源的快速自动定位与清除2026 年高教社杯全国大学生数学建模竞赛 B 题完整求解论文交会定位、极大极小测点优化、自适应多频道搜索与定向源恢复的统一建模模型、算法、代码、图表与验证一体化交付本文研究圆形目标区域中多个未知无线电干扰源的快速检测、定位与清除问题,建立了由误差楔交会模型、角度观测信息模型、分层勘测模型、鲁棒射线交会模型和定向覆盖反馈模型组成的统一求解框架。模型同时覆盖题目中的四个子问题:多测向射线形成的多边形定位区域及直径、第二个测点的极大极小优选、全向源自动搜索清除策略 阅读详情

相关推荐

ABB机器人绝对精度实战:从焊接路径优化到TCP控制(附配置步骤)

本文深入探讨了ABB机器人绝对精度在焊接路径优化中的核心价值。通过对比重复定位精度,阐明绝对精度如何补偿机械误差,确保TCP在整个运动路径上的轨迹精度。文章提供了从示教器激活绝对精度功能的详细配置步骤,并分享了针对焊接抖动和实现0.2mm路径精度的进阶调优技巧,包括TCP标定、伺服参数优化与系统维护。

weixin_29053073的博客 350

jsp 基础语法与案例

目录 一、jsp基本符号使用 二、内置对象 三、jsp、jstl标签 一、jsp基本符号使用 使用案例代码: <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ page isELIgnored="false"%> <html> <head> <title>首页</title> </head> <bod..

qq_50909707的博客 665

浅谈声发射振动复合传感器

浅谈声发射振动复合传感器 随着全球经济和自动化工业的迅速发展,人们对设备故障特别是轴承类的故障诊断也日益重视起来了。 为满足客户对旋转仪器轴承异常的精准诊断,单一的依靠振动信号或声信号分析,是很难兼顾轴承的多种异常情况的。 为此,市面上开始着手研发出了可同时分析机械设备的振动信号和声信号的复合型传感器。 初期的复合型传感器主要有 2 种类型,下面以 A、B 来举例说明。 A 型是在被测物表面不同的 2 个位置分别放置声发射(AE)传感器和加速度(ACC)传感器,它虽能一定程度...

pxtech的博客 1151

Java Web开发——JSP语法

对JSP语法进行简单介绍

KLXS_AL的博客 840

Unity 2022.3.3 LTS + Visual Studio 2022:手把手教你复刻《吸血鬼幸存者》核心战斗(附完整项目源码)

本文详细介绍了如何使用Unity 2022.3.3 LTS和Visual Studio 2022从零构建《吸血鬼幸存者》式战斗系统。通过图文开发教程,涵盖对象池优化、ECS架构雏形、2D物理碰撞控制等关键技术,帮助开发者高效复刻这款热门游戏的自动攻击与海量刷怪机制。

weixin_30721077的博客 458

【NLP】语言模型的发展历程 (1)

N-gram模型是一种基于统计语言模型的文本分析算法,它用于预测文本中下一个词出现的概率,基于前面出现的n-1个词的序列。这里的n代表序列中元素的数量,因此称为N-gram。Unigram:N=1,每个单词的出现概率独立计算,不考虑上下文。Bigram:N=2,基于前一个单词预测当前单词的联合概率模型。Trigram:N=3,考虑前两个单词来预测当前单词的联合概率模型,更复杂但可能更准确。

酒酿小圆子呀~ 1667

JSP语法大全及实例解析

JSP语法大全及实例解析 JSP页面由以下元素构成:静态内容、指令、表达式、Scriptlet、声明、动作、注释JSP指令:page、include、taglibJSP脚本元素:表达式、Scriptlet、声明(变量及方法)JSP隐式对象:输入和输出对象:request、response、out作用域通信对象:session、application、pageContext

chenyaonan521的专栏 554

设备接入与APP(应用程序)接入华为云iotDA平台的详细操作步骤及获取方式

设备及APP(应用程序) 登录 IoTDA 平台所需的 入场与操作清单内容,提供逐项详细操作步骤和获取方式,并穿插贴士便于理解与实际操作落地。内容基于 华为云 IoTDA 控制台 和 IAM 控制台 的实际使用路径整理。

hy行者勇哥的博客 3058

JSP基本语法

1.JSP页面的基本构成 JSP页面是指拓展名为.jsp的文件。 在一个JSP页面中,可以包括指令标识、HTML代码、JavaScript代码、嵌入的Java代码、注释和JSP动作标识等内容。但这些内容并不是一个JSP页面所必需的。下面将通过一个简单的JSP页面说明JSP页面的构成。 2.指令标识 指令标识主要用于设定整个JSP页面范围内都有效的相关信息,它是被服务器解释并执行的,不会产生任何输出到网页中的内容,也就是说指令标识对客户端浏览器是不可见的。 JSP指令标识的语法格式如下: <%@ 指令名

海盗船长y的博客 6488

BGP路由聚合:自动聚合和手动聚合

路由聚合是指将多条具体的路由合并为一条聚合路由,以减少路由表的条目数。这种技术通过只向对等体发送聚合后的路由,而不发送所有的具体路由,来减小路由表的规模。同时,被聚合的路由如果发生路由振荡,也不再对网络造成影响,从而提高了网络的稳定性。

网络技术联盟站 1219

mjlab & MimicKit 宇树 G1 人形机器人强化学习训练部署

基于mjlab框架训练Unitree G1人形机器人执行双旋踢的示例。参考动作源自Jason Peng的MimicKit项目。数据转换脚本(MimicKit pkl → mjlab csv)完整训练结果与超参数预训练ONNX检查点用于部署实体硬件部署指南⚠️ 免责声明仅用于教育目的。对于因尝试复现此处展示结果而导致的财产损失或人身伤害,我们概不负责。操作硬件时请谨慎行事并保持良好判断力。

2506_90492529的博客 1700

Jsp九大隐式对象&&四大域对象

今天说说Jsp九大隐式对象(隐含对象|内置对象)与四大域对象,jsp面试常问的,一定要掌握。那就开始了。Jsp共有九大隐式对象,也叫隐含对象或内置对象。JSP隐式对象是JSP容器为每个页面提供的Java对象,开发者可以直接使用它们而不用显式声明。JSP隐式对象也被称为预定义变量。 7.2 对象详情 7.2.1 pageContext 类型:PageContext 定义:代表页面域对象,用来代表整个JSP页面。 作用:...

斗鹰的技术专栏 1020

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

超级详细JSP 九大隐式对象

超级详细JSP 九大隐式对象 JSP内置对象是JSP事先创建好的一组对象,不使用new关键字就可以直接使用。 所有JSP页面均可使用(只要你是JSP页面,就可以使用JSP九大内置对象) 只有在JSP表达式(<%=%>)或JSP脚本(<%%>)中才可使用 输入输出对象 1.request request对象是javax.servlet.http.HttpServletRequest类的实例 (HttpServletRequest request = new HttpSer

sunrj_niu的博客 2017

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

JSP简单学习(动作、指令、九大隐式对象)

JSP简单学习(动作、指令、九大隐式对象) JSP全称Java Server Pages,称为java的动态服务器端网页技术。 使用jsp可以在html中嵌入java代码和jsp标签。从而可以实现根据不同的请求展现一些不同数据的效果 同样需要依赖web容器才能运行,下文会了解它的实现原理 基本语法 代码片段 <% java代码片段%> 可以在里面编写Java代码,使用最多 表达式 <%=java表达式内容%> 可以进行数据的输出,表达式的结果就会输出到页面上 声明 &l

编程大白菜 335

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

(JavaEE-08)JSP九大隐式对象

JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理。JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet) ,然后按照servlet的调用方式进行调用 由于JSP第一次访问时会翻译成ser...

231

【JavaWeb】JSP运行原理和九大隐式对象

【运行原理】        每个jsp页面在第一次被访问的时候 ,web容器都会把请求交给jsp引擎(即一个Java程序)去处理。jsp引擎先将jsp翻译成一个jsp servlet,然后按照servlet调用方式进行调用。        由于jsp第一次访问时翻译成servlet,所以第一次访问通常比较慢,第二次访问,jsp引擎发现jsp没有变化,就不再翻译,而是直接调用,所以程序的执行效率

王璐 841

Web基础了解版06-Jsp-指令、标签-九大隐式对象-四个域对象

Jsp Jsp全称Java Server Pages,也就是在我们JavaWeb中的动态页面。 Jsp能够以HTML页面的方式呈现数据,是一个可以嵌入Java代码的HTML。 Jsp其本质就是一个Servlet。Servlet能做的事情JSP都能做。 Jsp必须运行在服务器中,不能直接使用浏览器打开。 Jsp是Web网页的技术标准,主要语法组成包括:指令,html模板元素,脚本片段(小脚本),表达式,声明,注释,后缀是*.jsp。 Jsp主要负责显示及获取数据 Jsp是动态页面,html是静态页面...

深蓝旭的博客 196

jsp九大隐式对象——pageContext隐式对象

jsp代码: My JSP '11.jsp' starting page <!-- pageContext对象用在自定义标签开发技术里面 jsp页面最好不要出现java代码,可是很难避免使用, 里面都是java代码,所以就需要用java类开发自定义标签(), 而传过去八大对象很麻烦,所以用pageCont

無名的博客 1366

【Day35】JSP 技术:语法、指令与内置对象(隐式对象)

本文介绍了JavaWeb开发中的JSP技术,重点讲解了JSP的核心语法、指令和内置对象。JSP本质是特殊的Servlet,允许在HTML中嵌入Java代码,实现前后端一体化开发。文章详细解析了三种嵌入Java代码的方式:脚本片段、表达式和声明,并介绍了page、include、taglib三种JSP指令的用法。特别强调了JSP提供的9个内置对象(如request、response、session等)的使用方法,通过登录状态展示案例演示了实际应用。最后给出了常见问题解决方案和学习任务,帮助开发者快速掌握JSP

maihuohuo的博客 1070

jsp 简介

jsp 简介 1.jsp简介 ​ jsp的全称是 java server pages .就是java的服务器页面. 2.jsp工作原理 2.1 工作原理 第一次访问jsp时,服务器将jsp先翻译成xxx.java文件 , 再编译成xxx.classs文件 以后再访问时: 如果jsp文件修改 : 再次翻译&编译 如jsp文件未修改 : 不会翻译&编译 2.2 jsp本质是Servlet Class xxx_jsp : org.apache.jasper.runtime.Htt

qq_45938780的博客 963

JSP九大隐式对象/内置对象及四域范围

隐式对象/内置对象:不需要预先声明就可以在脚本代码和表达式中随意使用 部分解析: 一.out对象 可实现功能:在JSP页面中,向客户端发送文本形式的实体内容, 与ServletResponse.getWriter()返回的PrintWriter对象相似。 实例对象 :javax.servlet.jsp.JspWrite...

尘世千年的博客 824

JSP隐式对象/标签/映射/错误

JSP运行原理和九大隐式对象 JSP页面第一次被访问时,WEB容器会把请求交给JSP引擎(一个java程序)去处理 JSP引擎先将JSP翻译成一个_jspServlet(实质就是一个servlet)然后按照servlet的调用方式调用 翻译会导致第一次访问较慢,后面JSP无变化会直接调用 JSP引擎调用JSP对应的_jspServlet时,会传递或创建9个与web开发相关的对象供_

菠萝猫的博客 282

JSP技术---9大隐式对象

1.jsp技术 jsp是sun提供动态web资源开发技术。为了解决在Servlet中拼写html内容css、js内容十分不方便的问题,sun提供了这样一门技术。如果说Servlet是在java中嵌套HTML,则jsp就是在HTML中嵌套java代码,从而十分便于组织html页面 jsp页面在第一次被访问到时会被jsp翻译引擎翻译成一个Servlet...

a166244的博客 249

【jsp总结】jsp成servlet、错误页面、pageContext九大隐式、静态包含、jsp标签、EL表达式、JSTL、CSS中的路径写法

1、 jsp翻译保存在apache-tomcat-7.0.37.2\work\Catalina\localhost\HelloJavaWeb\org\apache\jsp jsp乱码解决pagEncoding="UTF-8" JSP脚本表达式:用于将程序数据输出到客户端 考虑到服务器压力,要是不用可以关了。

wanwan_javaweb的专栏 707

JSP的九大隐式对象/四大域对象

九大内置对象,都是我们可以在【代码脚本】中或【表达式脚本】中直接使用的对象。 pageContext :当前页面的域对象 request :当前请求的域对象 session :当前session的域对象 application :当前服务器的域对象 page :当前对象this response :当前响应的...

私は悪い人ですか的博客 219

JAVAWEB——JSP,jsp的三大指令,九大隐式对象,动作标签

一、jsp运行原理——jsp本质就是servlet(面试) jsp在第一次被访问时会被Web容器翻译成servlet再执行 过程: 第一次访问——>helloServlet.jsp(翻译成Servlet)——>helloServlet_jsp.java(编译后的Servlet)——>编译运行 PS:被翻译后的servlet在Tomcat的work目录中可以找到 二、jsp脚本和注释 jsp脚本: <% java代码 %> —— 里面的java代码翻译到service方法的内部

Mr_GYF的博客 465
上一篇: JSP—九大隐式对象之pageContext
下一篇: JSP与JavaBean
Wang_AI
博客等级 码龄12年 988粉丝 162原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值