JSP技术简介

本文介绍了JSP技术,它全名为Java Server Pages,是动态网页开发技术。阐述其工作原理,即请求/应答模式,首次请求时转换为servlet。还对比了JSP与HTML,HTML用于编写静态页面,JSP是动态页面,二者各有优缺点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一. JSP 简介

JSP全名为Java Server Pages,中文名叫java服务器页面,是一种动态网页开发技术,其根本是一个简化的Servlet设计,它是在传统的网页HTML文件(.htm,.html)中插入Java程序段和JSP标记,从而形成JSP文件,后缀名为(*.jsp)。


二. JSP 技术原理

JSP的工作方式是请求/应答模式,客户端发出HTTP请求,JSP收到请求后进行处理,并返回处理结果。在一个JSP文件首次被请求时,JSP引擎首先把这个JSP文件转换成一个servlet,而该引擎本身也是一个servlet。运行过程如下:

  1. JSP引擎首先把该JSP文件转换成一个Java源文件(servlet),在转换时,如果发现JSP文件中有任何语法错误,则中断转换过程,并向服务端和客户端输出错误信息。
  2. 如果转换成功,JSP引擎用javac把该Java源文件编译成相应的class文件。
  3. 创建一个servlet(JSP页面的转换结果)实例,该servlet的jspInit()方法被执行,jspInit()方法在servlet生命周期中只调用一次。
  4. 用jspService()方法处理客户端的请求。对每一个请求,JSP引擎创建一个新的线程来处理。如果多个客户端同时请求该JSP文件,则JSP引擎会创建多个线程来处理每个请求。由于该servlet始终驻留与内存,所以可以非常迅速的响应客户端的请求。
  5. 如果JSP文件被修改了,服务器将根据设置决定是否对该文件重新编译,如果需要重新编译,则将以编译结果取代内存中的servlet,并继续以上过程。
  6. 虽然JSP的效率很高,但首次调用时,由于需要转换和编译,会有一些轻微的延迟。此外,在任何时候,由于系统资源不足的原因,JSP引擎将以某种不确定的方式将servlet中从内存中移去。在此情况下,jspDestroy()方法首先被调用,然后servlet实例将被回收。

在jspInit()中可进行一些初始化工作,如建立与数据库的连接或其他配置。
在这里插入图片描述

三. JSP 与 HTML

  • HTML是超文本标记语言,使用微软自带的记事本或写字板都可以编写,主要用于编写静态页面。什么静态页面呢?是在客户端运行的程序、网页、插件与组件,注意它是可以播放动态的视频或者图片的,静态网页的意思可以理解为拷贝到哪儿都可以运行。

  • JSP是java服务器网页技术,必须通过发布到Tomcat等服务器上再运行转化为servlet才行,当然它是动态页面。

  • HTML的优点

  1. 开发过程中前端与后端脱离,交互通过JSON传输来实现
  2. 跨平台能力更强,依托于浏览器的支持
  3. 使后台数据接口能够得到复用
  • JSP的优点
  1. 可被爬虫爬到
  2. 减少请求次数
  3. 不用考虑浏览器的兼容性
  • HTML的缺点
  1. 开发难度大,考虑浏览器的兼容性
  2. 页面请求过多
  3. 属于后加载,无法被爬虫爬到
  4. 接口代码需要新增很多
  5. 无法直接显示java实体类对象,需要转换为json格式
  • JSP的缺点
  1. 增大了服务器的压力
  2. 前端与后端未脱离,拖慢开发进度
  3. 过于依赖java运行环境
  4. 复用较低。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值