Ruby / Rails开发人员的JSP工具?

我是一名全职的rubyist,非常喜欢rails,Sinatra等。但是,我发现自己正在开发一个Java / TomCat / JSP项目。

我希望有人可以帮我找到工具,文章,书籍以及任何其他能让我更舒服的资源吗?

我知道Java与Ruby非常不同,同样,社区也非常不同。 话虽这么说,围绕Java的所有文档(我发现)都是一团糟,在这个社区中发现非常困难。

我特别想要的东西:

  • 开发环境设置提示
  • 记录器,记录,多彩输出,最佳实践等
  • 图书馆资源和文件
  • 易于浏览Java SE 6的文档
  • 你发现的任何东西都可以让你的日常生活更美好

谢谢!

首先,您正走在正确的道路上,发现Java EE的优雅程度。 既然您接受了各种主题,我会将我的答案分成不同的部分:

  • 开发环境:如果没有进一步的讨论,我会建议您直接选择Eclipse Eclipse Java EE Juno(上一版本)版本,但是如果您想查看其他IDE,可以查看NetBeans 7.2(上一版本)或IntelliJIDEA 11.2 Ultimate(最新版本,我知道并且我有)。 基本上Eclipse拥有大量的插件和function,并由一个非常伟大,充满热情的社区提供支持。

[我个人尝试过NetBeans和IntellijIDEA,但是因为它的外观,function,酷炫的色彩主题等而感觉更舒服]

对于JSP和HTML,CSS,JS的东西,我推荐Jetbrains Webstorm的优秀IDE,它具有zen编码以及许多其他东西,如快速自动完成和支持许多框架。

最后,选择Sublime Text 2作为文本编辑器进行快速编辑或只检查源文件,它具有非常漂亮的布局,支持多种语言以及大量插件。

  • 资源和文件:

所有Java API规范都可以在Oracle网站上免费离线查看,并随附各种SDK。

  • 易于导航的文档:Eclipse IDE可以很容易地将JavaDoc和Source附加到组成JDK的不同jar文件中,也就是说,一旦你设置了它,你的学习和编码经验将会大大增加。所以当例如,在IDE中键入Connection,您可以简单地按住Ctrl命令,然后右键单击它,类实现的源代码将在另一个选项卡中打开。 是的,这是开源世界的力量:)

  • 关于提示和技巧:我建议您使用// TODO注释,因为Eclipse支持它们,您可以在设置中设置自己的TODO注释,也可以使用TASK注释,您也可以使用Mylyn管理您的错误,任务本地或连接到您喜欢的bug并通过连接器发出跟踪器,因为许多连接器可用于此目的。 添加到此列表可以配置书签,以帮助您在源文件变满行时对其进行管理。

  • 关于Tomcat:如果您的目标是使Java EE应用程序不需要Java EE规范的高级function,那么您可以使用甜蜜的Tomcat,它易于使用和配置以及众所周知的Web容器。

但是,如果情况并非如此,并且您希望专注于Java并花费大量时间来尝试理解这个巨大规范的细节,那么您可能需要一个支持所有Java EE组件的经过认证的Application Server。 有很多可用的,但既然你要求建议我在这里提出我的适度建议我会建议你选择GlassFish应用服务器,它是开源的,一旦你在Eclipse IDE上安装它,它将是与Java EE 5和Java EE 6 API文档捆绑在一起。 这意味着没有时间浪费在浏览不同的工具和选项卡上,您将把所有内容组合在Eclipse IDE中,以便您100%完成手头的任务。

ps:如果您还有其他问题,请随时给我打电话。

  • 任何好的提示或技巧:享受Java的乐趣,因为你将每天学习新东西:)

ps:我没有提到任何框架,因为当你习惯Java EE时,你将能够选择一个适合你需求的框架。 也忘了提到JUnit(测试框架)和一个优秀的eclipse插件EClemma代码覆盖(比Cobertura / eCobertura好得多,更容易使用),当然你可以尝试Maven作为提到的其他post,或尝试Apache Ant作为构建工具。

如果您要加入现有的Java项目,那么您可能希望查看已经使用的工具并让现有的开发人员/同事作为第一个停靠端口使您快速掌握它们。

话虽如此,这是我的最佳提示:

  • 熟悉其中一个主要的Java IDE 。 Eclipse(我的个人选择),Netbeans或IntelliJ都是您了解它们的优秀且非常强大的工具。 重构/代码导航工具可能比你在Ruby世界中习惯的任何东西都要好,它们会对你有很大的帮助。 通过良好的IDE设置,Java不那么痛苦。
  • 学习Maven – 这需要一些时间投入,但它对于自动化依赖关系管理和构建过程非常有用。 一旦你开始工作,你将节省大量的时间用于项目/构建管理。 Maven还通过各种公共Maven存储库提供对相当于Ruby gem的自动访问。

这里有一些特别有用的资源:

  • Java教程 – 很好地了解核心Java库的入门感。
  • Java 6 API – 作为核心Java中可用的所有类和function的参考资源很有用(其中很多也是通过IDE提供的)
  • JSP文档 – 用于JSP / Java EE方面

作为一点注意事项,不要忘记了解JSTL和表达语言。

如果你来自Rails背景,我会为最初的挫折感做好准备。 在IDE中设置项目可能非常耗时,并且通常使用Tomcat来启动和运行基本Web + app服务器比使用Ruby更痛苦。

对于REPL,我建议使用Groovy (实际上它预先安装在Intellij上),但您也可以使用BeanShell 。 Grails,或者在rails上的groovy,可能是我们对类似Rails的环境最接近的东西。

正如其他人所说,使用Java,使用IDE确实是最好的。 我喜欢Intellij IDEA,但eclipse和NetBeans也很好。

对于构建和依赖管理,Maven可能尽可能接近标准,尽管我听说过Gradle的好东西。

java中有太多的日志框架,使用你当前使用的项目,可能是log4j或SLF4J。 了解如何全面更改日志级别,以及包级别。

在图书馆方面,Google的Guava每天都让我的生活变得更好。 有关Java的最佳“提示,技巧和一般最佳实践”一书是Josh Bloch的Effective Java 。 对于文档, Javadoc是权威来源。 学习阅读和编写优秀的javadoc。

对于测试驱动开发,jUnit可能是使用最广泛的库,非常受欢迎的库是mockito ,这也是我最喜欢的。