如果您今天要开始一个全新的Java项目,并满足以下要求:
高规模(20k +用户)
你想要使用相当成熟的东西(不会发生剧烈变化)& 3年内不会死技术
你想要一些非常高效的东西(没有服务器在开发中重启,保存代码及其自动编译和部署),生产力和上市时间是关键。
前端有一定数量的AJAX
没有脚本语言(JRuby,Groovy,PHP等),它必须是Java
必须支持i18n
你会使用什么堆栈&为什么? (当我说堆栈时,我的意思是,所有的东西都要坚果,所以应用服务器,mvc框架,bean框架,ORM框架,javascript框架等......)
答案 0 :(得分:10)
我会考虑使用Java EE 6堆栈:
<子> (1)另见:
答案 1 :(得分:3)
对于传统的java webapp,为了你的目标,我会使用条带作为MVC框架,因为它很容易设置和运行,并且它在spring和hibernate中运行良好,并且具有良好的ajax支持。
就生产力而言,eclipse动态Web项目应解决您的编译/部署问题。我总是将它与tomcat一起使用,但它也适用于jBoss。
我个人会使用tomcat,stripe(mvc),hibernate(orm),spring(如果需要),jQuery(js)和eclipse进行开发。
答案 2 :(得分:3)
答案 3 :(得分:1)
我会选择:
我不会选择JSF ...... JSF 2.0比JSF 1.0要好得多,但在某些方面仍然很糟糕。你肯定会遇到“违背JSF方式”的情况(或者更确切地说,在JSF中没有适当的照顾)。
如果您希望控制一些复杂的导航,我会选择Spring 3.0框架和带有Spring Web Flow的Spring MVC。如果您愿意,这还可以让您选择将Web部件放在单独的服务器(例如Tomcat)上,并通过IIOP调用Glassfish上托管的EJB,从而扩展。
如果您希望完全控制页面的设计,(也许您打算聘请网页设计师来保持外观和感觉)我会选择Velocity这样的模板引擎,它可以很好地与Spring MVC集成并且与大多数工具(例如Dreamweaver)具有设计友好性。
最后,JQuery使用一些现成的Javascript小部件,如日历控件,弹出窗口,用户消息和转换。
答案 4 :(得分:0)
Scala和Spring