JSP是Servlet技术的扩展,本质上是Servlet的简易方式,更强调应用的外表表达。 JSP编译后是"类servlet"。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。 而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。 JSP和Servlet和本质上都是java类。你编写的jsp文件,初看起来虽然绝对不像一个java类,但当你把它部署到容器中后,如tomcat。tomcat将会把它翻译为Servlet,最后在把它编译为.class文件。你可以在“[TOMCAT_HOME]\work\Catalina\localhost\应用程序名称”中看到。 1.既然jsp归根结底是servlet,那为啥发明个这玩意呢? 最直接的原因是:在servlet写html会恶心死人的,呵呵。 2.为什么容器(tomcat)先把它翻译成Servlet(java),在编译成.class?为何不一步到位? 因为我们已经有java->.class这一部分了,利用jsp->Servlet(java)->.class 不是少开发了一部分
jsp是servlet技术的扩展,本质上是servlet的简易方式,更强调应用的外表表达。jsp编译后是"类servlet"。servlet和jsp最主要的不同点在于,servlet的应用逻辑是在java文件中,并且完全从表示层中的html里分离开来。而jsp的情况是java和html可以组合成一个扩展名为.jsp的文件。jsp侧重于视图,servlet主要用于控制逻辑。
JSP编译后是类servlet。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。