我对JSP的理解是,首次加载时,每个JSP页面都被编译为Java Servlet。ASPX页面是否相同(当然,不是进入servlet,而是等同于ASP.NET)?
使用JSP和ASP.NET(MVC 2),我还应该了解其他哪些 技术 差异?
JSP页面被翻译成Java源代码,然后被编译成类文件(包含Java字节码)以供将来执行。之后,它们实际上是在需要执行时由JVM编译的JIT(Just In Time)(因此它们非常快)。
我猜想.NET应用程序也有类似的过程,因为它们被编译成.NET程序集。这有点像Java的类文件,只是它们是要在CLR上运行的IL(中间语言)。在运行时,IL还将转换为本机指令以供执行。
实际的构建/运行时机制(从高层)可能令人惊讶地相似。
编辑
以下是有关ASP.NET的一些详细信息:http : //msdn.microsoft.com/zh- cn/library/ms366723.aspx
同样,对于基于Java的Web应用程序,可以将运行它们的容器配置为在部署应用程序时预编译JSP。然后,JVM将类文件加载到内存中,并从此开始处理JIT编译/缓存。