JSP页面是如何被执行的?JSP执行效率比Servlet低吗?
这是我从IT公司面试手册网站上看到的一个面试题,他们提供的答案是:
当客户端向一个JSP页面发出请求时,Web Container将JSP转化成Servlet的源代码(只在第一次请求时),然后编译转化后的Servlet并加载到内存中执行,执行的结果Response到客户端。
JSP只在第一次执行的时候会转化为Servlet,以后每次执行Web容器都是直接执行编译后的Servlet,所以JSP和Servlet只是在第一次执行的时候不一样,JSP慢一点,以后的执行都是相同的。
这个答案准确吗? 我也遇到了这个问题
基本 是正确的
对的
对,jsp先编译成java文件再执行
对的,但是JSP文件在Server运行时有更改的话会重新生成Servlet
理论上时这样的,等待高手给更详尽的解答
我也认为是这样的
基本上ok
先编译成Servlet是*.java,然后生成*.class文件,执行
是的,你在Tomcat下的work\Catalina\localhost\你的工程名\包名 下有一些文件这些文件的名字规则:
JSP文件名_jsp.java 或 JSP文件名_jsp.class
打开其中一个java文件,发现里面的内容其实是Servlet内容
应该是正确的,jsp先编译成.java文件,然后再执行
正确。
谢谢各位
相关问答:
大家好,我在JSP的初学者,在编程中遇到了一个问题:
<jsp:useBean id="accountBiz" class="bank.AccountBiz"
scope="application">
这个标签中application和sessi ......
1、我用servlet生成的随机验证码,放入session
2、在服务器端验证用户输入的验证码是否正确没有问题
3、可是servlet传到jsp的验证码和我在jsp从session中取得的验证码不一致,页面显示的比我从session中取到的要快 ......
我写了个jsp页面,然后改动了一下,改动的内容就是在jsp页面的js函数里加了个alert()语句,但是我访问这个页面时,死活都是原来页面的内容,我加了很多alert函数还是没改动前的页面内容;tomcat重启了,也重新部署这 ......