jsp与java的关系_jsp和Servlet关系

一、什么是servlet

servlet本质就是一个Java接口,Servlet运行在web容器当中(如docker镜像运行在docker容器当中)

二、什么是web容器

在JSP技术 推出后,管理和运行Servlet/JSP的容器也称为Web容器。

web容器中包含servlet容器。

web容器有很多(tomcat,Jboss,weblogic)等

三、什么是jsp

JSP是动态网页技术,出现在Servlet技术之后的,以“.jsp”为后缀的文件,在该文件中主要是html 和少量的java 代码。

JSP技术是为了解决Servlet的开发效率低下,不方便开发人员开发,jsp其本质还是Servlet

web容器根据JSP页面生成对应Servlet的Java文件及class文件

四、jsp和servlet怎样转换

JSP和Servlet会有如下转换:JSP页面的静态内容、JSP脚本都会转换成Servlet的xxxService()方法,类似于自行创建Servlet时service()方法。

JSP声明部分,转换成Servlet的成员部分。所有JSP声明部分可以使用private,protected,public,static等修饰符,其他地方则不行。

JSP的输出表达式(部分),输出表达式会转换成Servlet的xxxService()方法里的输出语句。

九个内置对象要么是xxxService()方法的形参,要么是该方法的局部变量,所以九个内置对象只能在JSP脚本和输出表达式中使用。// 不能在jsp Declaration中使用

五、JSP与Servlet的区别和联系

运行过程

客户在第一次请求JSP时,请求较慢,因为JSP 引擎先把JSP程序转换成servlet代码,接着将它编译成类文件,以后贮存在内存中再次调用速度就快了;

访问servlet时,可以直接对其编译好的类文件执行。

使用方式

要想使用servlet必须把它放在特定位置而且必须对其映射配置;

jsp可以放在和html同样位置(webapps根目录下或者webapps根目录下的子目录下)而且不需要配置,可以直接使用。

职能分工

jsp更侧重于前端页面显示

servlet更侧重于业务逻辑

部署方式

jsp是先部署后编译(先部署JSP文件到服务器,然后在用户访问时,服务器将JSP文件翻译为java类,再编译为class文件),

而servlet是先编译后部署(将由java类编译后的class文件部署到服务器上)。

修改方式

JSP修改后可以立即看到结果,不需要手工编译,JSP引擎会来做这些工作;

而Servelt缺需要编译,重新启动Servlet引擎等一系列动作。

本是一家人

Jsp 本质上是servlet,用jsp实现的页面用servlet也能实现。

六、jsp与js的差别

JSP在服务器上执行,并将执行结果输出到客户端浏览器,我们可以说基本上与浏览器无关。

它是与JavaScript不同的,JavaScript是在客户端的脚本语言,在客户端执行,与服务器有关。

七、扬长弊端提出MVC

JSP 在Html 中加入了大量的、复杂的业务逻辑,如果后期业务逻辑发生改变,修改jsp 就会捉襟见肘;

Servlet 虽然解决了业务逻辑的问题,但是通过字符串拼接的方式生成动态的Html 页面,也会导致代码臃肿,难以维护;

MVC(Model-View-Controller)模式就扬长避短,将两者完美结合在一起,它把把软件系统分为三个层次:模型(Model)、视图(View)和控制器(Controller);

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值