Jsp与Servlet的区别

  1. JSP经编译后就变成了Servlet.(JSP的本质就是Servlet,JVM只能识别Java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM能够识别的java类)。
  2. JSP更擅长表现于页面显示,Servlet更擅长于逻辑控制。
  3. Servlet中没有内置对象,JSP中的内置对象都是必须通过HttpServletRequest对象以及HttpServlet对象得到。JSP是Servlet的一种简化,使用JSP只需要完成程序员需要输出到客户端的内容,JSP中的Java脚本如何镶嵌到一个类中,由JSP容器完成。而Servlet则是个完整的Java类,这个类的Service方法用于生成对客户端的响应。
  4. JSP在本质上就是Servlet,但是两者的创建方式不一样。Servlet完全是JAVA程序代码构成擅长于流程控制和事务处理而通过Servlet来生成动态网页;JSP由HTML代码和JSP标签构成,可以方便地编写动态网页
    因此在实际应用中采用Servlet来控制业务流程,而采用JSP来生成动态网页.在Struts框架中,JSP位于MVC设计模式的视图层,而Servlet位于控制层。
  5. JSP是Servlet技术的扩展,本质上就是Servlet的简易方式。JSP编译后是“类servlet”。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。

你可能感兴趣的:(Jsp与Servlet的区别)