JSP与Servlet以及html之间的区别与联系

JSP与Servlet

JSP(Java Server Pages)是建立在 Servlet 规范之上的动态网页开发技术,其实质是一个简化的 Servlet。在 JSP 文件中,HTML 代码与 Java 代码共同存在。其中,HTML 代码用于实现网页中静态内容的显示,Java 代码用于实现网页中动态内容的显示。为了与传统 HTML 有所区别,JSP 文件的扩展名为 jsp。
Servlet是一个API,它提供了许多接口和类,包括文档。是一个必须实现的接口,用于创建任何servlet。Servlet是一个扩展服务器功能并响应传入请求的类。它可以响应任何类型的请求。

联系

jsp可以说是一个简化的servlet,是对servlet的一种高级封装。本质还是servlet。jsp经编译后就变成了Servlet。最主要的特征就是servlet用来执行业务流程,jsp来生成动态页面。

JSP是web开发技术,Servlet是服务器端运用的小程序,我们访问一个JSP页面时,服务器会将这个JSP页面转变成Servlet小程序运行得到结果后,反馈给用户端的浏览器。

区别

1、Servlet中没有内置对象,Jsp中的内置对象都是必须通过HttpServletRequest对象,HttpServletResponse对象以及HttpServlet对象得到。
2、Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。也就是说,jsp内嵌于html文件中,在html中写java代码,Java代码被动态执行后生成HTML内容;而servlet实在java文件中写htm代码,servlet本质是一个java类,Servlet在Java代码中通过HttpServletResponse对象动态输出HTML内容。

JSP与html

HTML(Hyper Text Mark-up Language )即超文本标记语言,是 WWW 的描述语言。最通俗的说法就是一种超链接,比如收藏一个网页就是保存它的链接。

联系

JSP其实是在servlet里面输出了html文本,在前端显示。就是说,在后台写的jsp页面,其实在编译的时候变成了servlet,前端显示的页面是servlet输出的html页面,你看到的jsp其实根本还是html页面。
在这里插入图片描述
请求一个比如 index.jsp,并不是为了获取这个 jsp 本身的内容,而是获取这个 JSP 所生成的 HTML(可以包括 Javascript 及 CSS 等)。这个生成过程在服务器端完成,在这个过程中,所有的 JSP 的 tag,各种表达式(jstl,el 等)以及各种脚本被处理以生成最终的 HTML。最终得到的 HTML 被发送到浏览器端,内容中也不再包含 JSP 的各种 tag 等。

区别

HTML页面是静态页面,也就是事先由用户写好放在服务器上,固定内容,不会变,由web服务器向客户端发送,平时上网看的网页都是大部分都是基于html语言的。

JSP页面是有JSP容器执行该页面的Java代码部分然后实时生成动态页面,可动态更新页面上的内容。
总而言之:
1、定义上HTML页面是静态页面可以直接运行,JSP页面是动态页它运行时需要转换成servlet。
2、HTML能直接打开,jsp只能发布到Tomact等服务器上才能打开。
3、HTML(Hypertext Markup Language)文本标记语言,它是静态页面,和JavaScript一样解释性语言,只要你有一个浏览器那么它就可以正常显示出来,而不需要指定的编译工具,只需在TXT文档中写上HTML标记就可以正常显示。

JSP(Java Server Page)是Java服务端的页面,所以它是动态的,它是需要经过JDK编译后把内容发给客户端去显示,我们都知道,Java文件编译后会产生一个class文件,最终执行的就是这个class文件。
4、html和jsp的表头不一样,这个是JSP的头“ <%@ page language=”java” import=”java.util.*” pageEncoding=”gbk”%>”在表头中有编码格式和倒入包等。也是很好区分的,在jsp中用<%%>就可以写Java代码了,而html没有<%%>。

编辑参考链接:https://blog.csdn.net/yangdan1025/article/details/82153426

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐