什么是ASP.NET / PHP的主流Java替代方案?

62

我听说过一些使用ASP.NET / PHP构建的Web应用程序,并看到了一些例子,现在我想知道在Java世界中完成类似事情的等效方式是什么。 在维基百科上搜索后,我发现有很多框架,但我有点困惑哪一个是最好的。

2个回答

104

Java的PHP"Classic" ASP等价物是JSP(JavaServer Pages),其中包含 scriptlets (嵌入的原始Java代码)。在Java Web开发世界中, scriptlets 被认为是不良实践。应该优先选择标签库和EL(表达式语言),而不是 scriptlets ASP.NET (MVC)的Java等效物是Java MVC框架。有很多基于Java的MVC框架,通常提供基于Servlet / Filter的控制器和标签库来与模型(通常是Javabean)和视图(通常是JSP页面,但也可以是XHTML)交互。

开始,Java EE API提供了JSF (JavaServer Faces),它又带有基于XHTML的模板视图技术Facelets。Facelets被视为旧有JSP的替代品。此外,还有很多开源的Java MVC框架是建立在JSP/Servlet API之上,旨在作为JSF的一种替代/竞争。你可以在这里找到所有这些框架的信息,其中流行的包括Spring MVCStruts2Stripes
至于选择哪一个,我建议看看这个答案,我非常赞同它。

3
谢谢你的赞赏,这是一份不错的答案。 - Pascal Thivent
根据这个问题,似乎ASP.NET MVC是一个请求(动作)MVC框架,这是正确的吗?(我假设请求/动作和基于组件的是MVC框架的两个独特/主要组)。顺便问一下,有哪些PHP等效的框架呢? - Piovezan
请分享一些关于使用GlassFish和JavaEE的服务器硬件资源的经验,与PHP或NodeJS相比。通常认为Java非常浪费资源。 - Zon

6
最好的不一定是最主流的。我认为最直接的等价物(由于其标准轨迹性质)是JSF 2.0和Facelets。
话虽如此,其他框架存在的原因也是有道理的……最好评估几个并确定哪一个最适合您团队的开发风格。
另请参见this question

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接