以前,我对于这两样东西,没有想过去想它们有什么区别,因为jsp在编译完后也会成为一个servlet的.class文件。所以,它们对我个人来说基本没有什么区别。在网上看到有位网友说:“servlet是jsp的爹!”,很有趣也很实在!后来,去面试就遇到了这样的一个问题,所以,我也是在网上看了一下,才知道说出它们的区别是假,只是公司想考考你对MVC的理解!
SERVLET是SUN早期推出的,其功能比较强劲,体系设计也很先进,只是,它输出HTML语句还是采用了老的CGI方式,是一句一句输出,所以,编写和修改HTML非常不方便。
后来SUN推出了类似于ASP的镶嵌型的JSP,把JSP TAG镶嵌到HTML语句中,这样,就大大简化和方便了网页的设计和修改。
这儿也就产生了一个区别了,SERVLET是往JAVA代码中嵌HTML元素,JSP是往HTML里嵌JAVA代码。呵呵。。。。。。
如果,我们这样嵌来嵌去的话代码肯定是混乱不堪,不容易理解。对于后期的维护将是一大难题!
所以说,jsp比较适合与承担view这个角色。
而servlet比较适合与承担Control这个角色。
理论上讲用servlet来写的东西,都可以用jsp完成。虽然JSP基本上实现了Servlet的功能,但JSP在性能上是无法与Servlet相比的。
这就是我对jsp与servlet的总结,我把网上的一些分散的理解,进行整理的结果。怎么样比较容易理解了吧?
来自:https://blog.csdn.net/yaohaibing576082210/article/details/5855444