c# - ASP.NET 和 Java Servlets/JSP 之间的技术差异

标签 c# java asp.net jsp asp.net-mvc-2

我对 JSP 的理解是,每个 JSP 页面在第一次加载时都被编译成一个 Java Servlet。这对于 ASPX 页面是否相同(当然,不是在 servlet 中,而是在 ASP.NET 等价物中)?

我还应该注意 JSP 和 ASP.NET (MVC 2) 的哪些其他技术差异?

最佳答案

ASP 可以模糊地与 JSP/Servlet 相提并论。 ASP.NET 可以模糊地与 JSF(构建在 Servlet/JSP 之上)进行比较。

ASP.NET 和 JSF 都是基于组件的框架,而 JSP 和 ASP 主要是 View 技术。

如果做得正确,JSP/Servlet 可用于具有基于操作的方法,其中 Controller 处理命令并转发到 View 以进行渲染 (MVC),从而将 View 渲染与业务分离逻辑。

但是基于组件的框架采用的方法不同,每个组件都可以触发回调(业务逻辑)并负责呈现自己。它们还依赖于数据绑定(bind)的概念,这在基于操作的框架中并不存在。

基于组件的模型更接近于桌面应用程序的编程模型,但抽象出应用程序的网络性质。这既好又坏。当您想优化与 Web 相关的东西(例如友好的 URL 等)时,这很糟糕。这就是为什么 Microsoft 后来在 ASP.NET 旁边引入基于操作的 MVC 框架的原因。

关于c# - ASP.NET 和 Java Servlets/JSP 之间的技术差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3371300/

相关文章:

c# - 我必须检查 Asp.Net 中的数据库中是否存在数据

c# - 将 Entity Framework 对象绑定(bind)到 Datagridview C#

java - 将 'this' 传递给新对象的内联重写方法的正确方法是什么?

asp.net - Visual Studio 中未安装依赖项

Java 9 嵌套(分层或父/子)模块

java - 打开和关闭飞行模式以及如何在 android 中打开移动数据

c# - WebHost 在 Asp Net Core 2.2 默认 API 模板的当前上下文中不存在

c# - 在 C# 中将代码放在按钮后面

c# - Xamarin Forms Exrin Framework将容器推为模态?

c# - System.Timers.Timer 是否在独立线程中运行?