Servlet与JSP的区别

Servlert与JSP的区别

    Servlet是使用Java Servlet接口(API)运行在Web应用服务器上的java程序,由Servlet容器所实现。如Tomcat,JBoss等。而我们编写一个Servlet,实际上就是按照Servlet规范来编写一个Java类。通常情况下,HTTP请求中POST,GET等类型的具体操作方法在HttpServlet中提供了,而且我们所编写的Servlet对象都是继承于HttpServlet。在开发的过程中,所使用的具体的Servlet对象就是HttpServlet对象,原因是HttpServlet的实现类,并提供了HTTP请求的处理方法。

    虽然他们都可以编写业务逻辑处理HTTP请求,也可以通过HTML代码来编辑页面,而且实际上JSP编辑过后就成为了Servlet,实质上Servlet比JSP出现得早,算是继承了Servlet,只不过它在Servlet当中又添加了一些方法,做了新的封装,但是在实现功能的上,还是有一定的区别的。

1)  Servlet和JSP最主要的不同就是在于Servlet的应用逻辑在Java文件中,并且完全从表示层中的HTML里分离出来,而JSP的情况就是Java和HTML可以组合成为一个扩展名为.jsp的文件。JSP侧重于视图,而Servlet主要用于控制逻辑。

2)  而为什么要在Servlet的基础上推出JSP呢?虽然Servlet也可以实现HTML代码,但是毕竟这种方式编写和修改非常不方便,是一句一句的输出,

例如:在JSP中写<span>数据</span>标记,

而在Servlet上需要写out.println("<span>数据</span>");

所以SUN公司就推出了JSP,在JSP 中可以包含HTML和Java代码等。当我们需要用到CSS样式代码,JS脚本的时候也十分地方便。

3)  JSP 与Servlet的创建方式不同,Servlet完全是JAVA程序代码构成的,需要遵循Java的标准,并且需要调用Servlet提供的相关的API接口的方法才可以对HTTP请求及业务进行处理,对于业务逻辑方面的处理功能十分强大。而JSP 只需要通过HTML代码和JSP的内置对象就可以实现对HTTP 请求及页面的处理,其显示的界面的功能更加强大。实际上Servlet可以实现JSP的所有功能,但是使用起来并不是那么方便。

4)  速度不同,由于JSP页面是由JSP Container对其进行管理,但是每次执行不同内容的动态JSP页面时,JSP Container都要对其进行自动编译,不需要手工进行编译,JSP引擎会做这些工作的,而Servlet需要重新启动Servlet引擎来做这些工作。但是Servlet在编译完成之后,则不需要对其再次编译,可以直接获取及输出动态内容。所以JSP执行的效率是会低于Servlet。当然,在JSP页面中的内容没有发生变化下,JSP页面的编译完成之后,JSP Container也不会再次对JSP进行编译。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值