在Web开发中有这么多语言,有时我会混淆哪一个学习和开始.我喜欢Java,但不喜欢JSP的演示,是否有最适合用于Web应用程序开发的Java/Java EE后端的前端技术?
最近JavaEE版本中推广的Web层技术是JSF.它为视图使用facelets而不是JSP.
使用JSTL的JSP非常好,我没有理由放弃它.您可以将它与任何Web框架一起使用,例如spring-mvc,struts或其他具有不同渲染技术的框架,如GWT,Vaadin,Wicket等.
对于大多数事情,它取决于您的项目需要什么.以下是您可能会发现有用的两种强大的Web技术.
对于丰富的AJAX重型应用程序,Vaadin非常适合.
优点:
- 快速开发UI组件和后端bean之间的复杂交互
- 纯Java解决方案,无需担心创建标记或维护大量javascript文件
- 良好的文档
- 许多强大的组件开箱即用和通过开源社区
缺点:
- 可以有一个陡峭的学习曲线来理解各种组件
- 扩展/更改某些功能(例如UI表如何从数据源检索数据)可能非常困难
- 如果您的应用程序需要具有高度可扩展性,请保持记住这个框架是有状态的
- 处理浏览器和动态URL上的后退按钮是额外的工作
如果您想保持总体控制和可伸缩性,那么使用或不使用JSP的Spring MVC是您最好的选择.这是一个很好的hello世界,该网站上提供了更多的spring mvc教程.
好处:
主要依靠开放标准
高度可扩展
帮助在代码中强制执行适当的MVC
RESTful框架允许开发人员分别轻松处理动态URL和GET/POST
通过创建HTML/CSS/JS来保留总体控制
注意:对于HTML/CSS/JS解决方案,我建议从Zurb Foundation或Twitter Bootstrap开始.与从头开始相比,它将节省大量时间.下载最新版本并将其导入您的webapp文件夹,以便快速提升您的项目.
缺点:
- 管理AJAX调用对大型应用程序来说可能会遇到挑战
- 需要更深入的HTML/CSS/JS知识(与Vaadin相比)