我承认这个问题广泛而模糊,但我想从那些具有Web-UI Java经验的人那里了解到。
当您获得构建Web应用程序(如网站(例如,电子商店))的任务时,哪个框架是与最新Java Web技术联系的良好开端?
问题不在于哪个框架更好以及为什么,问题是:如果您想学习使用Java构建web-ui应用程序的常用和现代方法,最好从哪里开始选择构建可扩展且可靠的Web应用程序的基本要素,这些应用程序可以从具有几页的启动站点发展到具有每秒数百个连接的大型应用程序?
答案 0 :(得分:2)
Spring Roo应该让您立即启动并运行,并自动使您使用Spring Framework,Spring MVC,Spring WebFlow,JSP,JSTL,JPA,AspectJ等。
我个人使用Roo来获得基础,然后我“un-Roo”我的项目并继续我的业务扩展项目我需要的方式。
答案 1 :(得分:1)
有很多不错的选择:Spring MVC,GWT,Grails,Roo(请注意我是如何故意遗漏JSF的?)。这实际上取决于你对语言的各个部分的舒适程度。假设您遵循惯例,Grails和Roo将在您的应用程序的所有层中为您做很多事情。 GWT将在大多数情况下让你远离丑陋的html和javascript。 Spring MVC非常不引人注目,并且主要充当调度程序和绑定程序,将所有细节视图,持久性等细节留给编码人员。
这个问题没有正确的答案,这完全取决于你想做什么,需要多么灵活等等。
答案 2 :(得分:1)
嗯,开始一个新的Web项目有两种可能性:
我不是说他们是最好的选择,但知道他们存在是很好的。
答案 3 :(得分:1)
我认为Web应用程序在浏览器方面越来越丰富,而且服务器组件越来越小。也就是说,MVC模式在浏览器中具有更重要的意义,因此最大限度地减少了保留和跟踪服务器状态的需要。
因此,最相关的问题可能不是使用Java构建Web应用程序的现代方法,而是构建Web应用程序整体的现代方法。但是如果你只关注Java部分,你会看到从MVC转向REST风格的以数据为中心的服务。无论是Spring MVC中的REST注释还是更“纯粹”的JAX-RS实现(并且有很多),服务器最终保留的小状态是安全上下文。
就纯粹的可扩展性而言,这包括那些以数据为中心的服务的设计和适当的粒度。当然,服务器本身有基础(共享资源,如连接池,线程池,数据库调优),但这些并不是什么特别新的。
答案 4 :(得分:0)
你的问题对StackOverflow来说太笼统了。
来自维基百科的史诗比较 - Comparison of web application frameworks