坚持使用基本的Java EE 6,或选择像Play这样的框架。刚毕业

时间:2012-01-16 11:22:27

标签: playframework java-ee-6

这个帖子也有点相关:framework or notSpring or Java EE 6, oh my

总结了这个问题:

除了一点点休眠之外,我是否应该使用Java EE 6而不需要太多框架,或者我应该跳进像Play这样的框架?我想要的只是创造一个花哨的网站,同时有一些控制和灵活性来满足我的好奇心。

短背景

作为创建我的第一个可靠网页的初学者,并且已经有3年的Java研究,去年是java EE 6,我发现自己在开始新的业余爱好项目之前就已经到了现在,我应该坚持只使用基本的Java EE 6在创建新页面时,或者我应该使用像playframework这样的框架。

项目

我想通过网站实现以下目标:

  • HTML5和css3,还有一些花哨的jQuery
  • 能够让管理员登录网站,并对其进行基本控制(帖子,新闻,图片,视频)
  • 可以选择在智能手机上看起来很棒(不知道如何解决这个问题,也许在检测到手机时可以创建自己的手机链接?)
  • 在数据库中存储评论,帖子。
  • 多种语言(德语,英语为初学者)

多数民众赞成。真正的问题是,如果我通过使用像游戏这样的框架,在我对网络开发的理解中进一步向下射击。 (像hibernate / spring等框架我觉得有点不同。)

对我来说,技术意味着让每个人都能更轻松地完成生活和任务,因此这是选择Play,推动新想法和做事方式的有力论据。但另一方面,我读过并作为参考使用的一本书是Java EE 6 with Glassfish 3,我不确定我是否应该坚持这一点,从而增加对使用Java进行Web开发的更深入理解,或者推动这项新技术,因为它似乎使事情变得快速而简单。

对不起这个奇怪的问题,但是它现在有这么多的选择,也许一些老兵可以指导我一点点?

2 个答案:

答案 0 :(得分:4)

这真的是一个意见问题,我希望你能得到更多有经验的用户的意见,而不仅仅是我,但这是我的2美分:

未来

  

真正的问题是,如果我通过使用像玩游戏这样的框架来进一步了解自己对网络发展的理解。 (像hibernate / spring等框架我觉得有点不同。)

你不会。这里唯一的危险是你有时会“忘记”那个游戏!真正使用了许多不同的框架/技术(如Hibernate,Netty等)。只要你意识到你可以在技术上仍然以独立的方式使用这些技术 - 在Play之外! - 你应该没事。事实上,如果你真的想知道HTTP是如何工作的(你应该这样做!)玩!将帮助你更多,因为它不会像Java EE那样不惜一切代价隐藏HTTP。

要求

Play的所有要求都包含在内!和Java EE,所以这不是问题。事实上,玩游戏可能会更好!因为它不会试图强迫您使用任何一种特定的技术(Java EE可能会假设您将使用例如JSF)。

结论

最重要的一点 - 无论如何我的意见 - 是:意识到这两个框架都存在。意识到Play中的一些问题更容易解决!而其他人可能更容易在Java EE中解决。正如你所指出的那样,还有Spring,它仍然是一个出色的框架,提供了很大的自由以及大量的集成选项。

在我看来,玩!提供了一种非常需要的Java EE替代方案,特别是在哲学和方法方面。我发现Java EE臃肿且不必要地复杂化,而不是因为Java EE应用服务器的大量黑洞。但是,许多企业环境仍然喜欢Java EE,因为它很严格。如果你正在做一个你想要了解特定技术的爱好项目;用Play!框架。但是别忘了Play!对于Java Web开发的每个问题都不是,也永远不会是唯一的答案。它清新,现代,简洁,使用起来非常有趣,但与任何框架一样,它的实际净值取决于项目要求使用它的人。

答案 1 :(得分:2)

这在很大程度上取决于你对未来的期望。 如果你正在计划创建一个启动,你可以控制技术堆栈 - >去玩。

如果您想在一些薪水较高的公司工作,请使用JavaEE6。

至于JavaEE6 / PlayFramework背后的技术 - 其中一些东西几乎相同...都使用JPA2,两者都使用JAXB,你可以在两者中使用Bean验证(Play2)从一开始就已经包含了这个权利.. ..

如果您选择JavaEE6,最终会得到一些JSF组件库... PrimeFaces是一个很好的,但它只包装JQuery UI ..其他大多数也包装jquery或其他一些库(dojo)等等......)

如果你想学习很多关于网页开发,html5,css,javascript,ajax,http等的内容,你应该去玩游戏。

如果您想要一个安全的工作和Web开发的“更高级别视图”(尽管迟早需要深入解决/理解问题),请使用JavaEE6。

这是我的个人意见......我用JavaEE6制作项目,现在我正在用Play做任何事情(甚至迁移了一些javaee6项目)..这实际上取决于你的计划是什么,尤其是你的'刚刚毕业。