首页 Java java教程 jsp工作原理是什么

jsp工作原理是什么

May 20, 2019 pm 06:17 PM
jsp

JSP是Servlet的扩展,JSP没出现之前,就已经出现了Servlet技术.Servlet是利用了"输出流",动态的生成了HTML页面。包括 每一个HTML标签和所有的HTML页面中出现的内容,简单点说就是利用Servlet的输出流将HTML标签生成一个HTML页面。由于时间长了 Servlet中包含了大量的HTML标签、大量的静态文本及格式等,导致了Servlet的开发效率非常低下.

jsp工作原理是什么

这时候JSP诞生了,JSP弥补了这种情况,JSP通过在标准的THML页面中嵌入JAVA代码,使其静态的部分无需JAVA程序控制,只有那些需要从数据库读取或需要动态生成的页面内容,才使用JAVA脚本控制。

JSP主要是由两部分组成:

(1)静态部分:标准的HTML标签、静态的页面内容,这些内容与静态HTML页面相同.

(2)动态部分:Java程序控制的内容,这些内容由Java程序来动态生成。

下面是一个最简单的一段jsp代码:

<%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
<html>
    <head>
        <title>欢迎</title>
    </head>
    <body>
        欢迎学习Java JSP!现在时间是:<%out.println(new java.util.Date());%>
    </body>
</html>
登录后复制

页面中粗体字代码放在<%和%>之间,表明这些是Java脚本,而不是静态内容,通过这种方式就可以把Java代码嵌入HTML页面中,这就变成了动态的JSP页面。从表面上来分析,JSP页面已经不再需要Java类,似乎感觉完全脱离了Java面向对象的特征了,但是,实际上JSP是Servlet的一种特殊的形式,每一个JSP的页面就是一个Servlet的实例。

工作原理

(1)当用户访问一个JSP页面时,回想一个Servlet容器(Tomcat)发出请求;

(2)如果是第一次请求页面,或页面有所改动,则servlet容器首先要把JSP页面(假设为test.jsp)转化为Servlet代码(test.java),再将其转化为(test.class文件);因为这个过程(编译)会耗费一定时间,所以第一次访问或jsp文件有改动时,访问时间有些长;

(3)JSP容器负责调用从JSP转换来的servlet,这些servlet负责提供服务相应用户请求(比如客户端发送表单,要求servlet:formprocessor.java来处理,则容器会建立一个线程,调用formprocessor.java来处理该请求);如果用户有多个请求,则容器会建立多个线程处理多个请求;

(4)容器执行字节码文件(包括调用的servlet:formprocessor.java字节吗),并将其结果返回到客户端;(返回的最终方式是有servlet输出html格式的文件流)

注释:

JSP页面必须要在JSP服务器内运行,如tomcat weblogic,jboss等等.(顺便说一下,apache 和 tomcat是两码事儿,有不少人认为
apache就是tomcat,其实是错误的理解!~,tomcat只是apache中的一个子项目,apache是作为WEB应用服务器,而tomcat可以说是JSP或Servlet的一个web容器);
JSP页面的访问者无须安装任何客户端,甚至不需要可以运行Java的运行环境,因为JSP页面输送到客户端的是标准HTML页面。

相关学习推荐:java基础教程

以上是jsp工作原理是什么的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

jsp是属于前端还是后端 jsp是属于前端还是后端 Jan 28, 2023 pm 06:23 PM

jsp属于后端。jsp的本质是一种servlet,而servlet又是服务器端的java应用程序,所以jsp是属于后端的技术。JSP部署于网络服务器上,可响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java作为脚本语言,为用户HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。

SpringBoot项目如何整合JSP SpringBoot项目如何整合JSP May 12, 2023 pm 07:40 PM

新建好springboot项目以后目录如下:第一步:在项目的pom文件中加入配置jsp所需要的jar包代码:org.apache.tomcat.embedtomcat-embed-jasperprovided第二步:在main路径下新建目录webapp,在webapp下新建路径WEB-INF,在WEB-INF下新建路径jsp,在这个路径下放置我们要使用的jsp文件第三步:在主配置文件中配置jsp文件的访问路径和后缀代码:spring.mvc.view.prefix=/WEB-INF/jsp/sp

jsp和html区别在哪 jsp和html区别在哪 Jan 09, 2024 am 10:46 AM

jsp和html区别:1、运行机制;2、用途;3、与Java的关系;4、功能;5、与后端的关系;6、速度;7、可维护性和扩展性;8、学习和使用的难易程度;9、文件后缀和识别工具;10、社区和支持;11、安全性。详细介绍:1、运行机制,HTML是一种标记语言,主要用于描述和定义网页的内容,它运行在客户端,由浏览器解释执行,JSP是一种动态网页技术,运行在服务器端等等。

jsp分页功能怎么实现 jsp分页功能怎么实现 Mar 04, 2024 pm 04:40 PM

实现步骤:1、在JSP页面中引入JSTL标签库;2、从数据库中获取数据;3、对数据进行分页处理;4、在页面中显示分页导航条;5、根据当前页码和每页显示数量,从分页后的数据中获取对应的数据并显示在页面上即可。

如何用jsp+mysql实现网页的分页查询 如何用jsp+mysql实现网页的分页查询 May 30, 2023 pm 03:58 PM

一、实现分页查询的核心sql语句(1)查询数据库的记录总数的sql语句:selectcount(*)from+(表名);(2)每次查询的记录数的sql语句:其中:0是搜索的索引,2是每次查找的条数。select*from表名limit0,2;二、代码实现*上篇写过这两个类,DBconnection类:用于获取数据库连接,Author对象类。这两个类的代码点击连接查看。点击链接查看DBconnection类和Author对象类(1)登录页面:index.jsp。Inserttitlehere用户列

jsp是什么格式的文件 jsp是什么格式的文件 Jan 24, 2024 pm 04:01 PM

​JSP是一种动态网页技术标准,其文件格式是在传统的网页HTML文件(.htm,.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。

Web开发的Java技术栈:了解Java EE、Servlet、JSP、Spring等常用于Web开发的技术 Web开发的Java技术栈:了解Java EE、Servlet、JSP、Spring等常用于Web开发的技术 Dec 26, 2023 pm 02:29 PM

JavaWeb开发技术栈:掌握JavaEE、Servlet、JSP、Spring等用于Web开发的技术随着互联网的迅速发展,在当今的软件开发领域,Web应用的开发已经成为一种非常重要的技术需求。而Java作为一种广泛应用的编程语言,其在Web开发领域也有着重要的地位。JavaWeb开发技术栈涉及多项技术,如JavaEE、Servlet、JSP、Spr

JSP能否被PHP取代? JSP能否被PHP取代? Mar 21, 2024 am 11:03 AM

JSP能否被PHP取代?JSP(JavaServerPages)和PHP(HypertextPreprocessor)都是常用的服务器端脚本语言,用于动态生成网页内容。虽然它们各有特点和优势,但在实际应用中,是否可以完全取代对方呢?本文将分析两者的优缺点,并通过具体的代码示例进行比较。首先,我们来看一下JSP和PHP各自的特点。JSP是一种基于Java的

See all articles