初学java web的开发工具/环境(Java beginner web-development t

2019-08-04 03:24发布

我一直负责开发使用Java和MySQL的一个互动网站:使用servlet来检索和按摩的数据,小程序做数据的客户端进行特殊的处理,并且处理来自客户端对不同的数据视图的请求。

你有什么建议,作为使用Java Web开发一个适当的通用工具/环境。

我需要知道是干什么用的以下内容:

  • 服务器端(tomcat的?/?)
  • CMS
  • 编辑/ IDE
  • 通用工具/公用事业
  • 导演(特殊用途)工具/公用事业
  • 测试和QA工具/公用事业/技术
  • 参考材料(均导通及离线)

请评估建议的解决方案(S)和供给替代/改进/支持


建议的Java Web开发工具/环境

由国开行 :

  • 服务器端:
    的Tomcat6
  • CMS:
    Drupal的(在初始阶段没有必要)
  • 编辑/ IDE:
    NetBeans的(适合初学者)
  • 常规工具:
    (几乎所有的东西是在NetBeans ......去了以后)
  • 导演(特殊用途):
    (几乎所有的东西是在NetBeans ......去了以后)
  • 测试和QA:
    JUnit和使用Firebug(先做手动测试)
  • 参考资料:
    头扎系列的JSP,JavaScript等
    SCRIBD(在线)
    [ 编辑 ]
  • 框架:
    Spring Web MVC框架2.5 - ( 这似乎包含大部分其他框架 )

从答案选项蒸馏

服务器端

  • Apache Tomcat上 - “为Java代码运行HTTP Web服务器环境”
  • 码头 - “HTTP服务器,HTTP客户端和容器的javax.servlet”
  • GlassFish的 -应用服务器(基于Tomcat的+更多的功能)
  • JBoss的 -应用服务器(“基于J2EE的应用服务器在100%纯Java实现”)

CMS

  • Drupal的

编辑器/写入

  • 日食 - IDE
  • NetBeans的 - IDE
  • 的IntelliJ -礼IDE

通用工具/公用事业

  • Maven的 - “..现在可以用于构建和管理任何基于Java的项目的工具。”
  • log5j也是这里 [SourceForge上] - “Java记录库的Java版本5及以上”

导演(特殊用途)工具/公用事业

  • CruiseControl的 -基于团队的“工具,用于创建自定义的持续构建过程中的可扩展的框架”
  • Spring框架 ( -设计)

测试和QA工具/公用事业/技术

  • Watij - “创建的Java API,允许Web应用的自动化”
  • 的HtmlUnit - “IT模式的HTML文档,并提供了一个API,可以让您调用页面,填写表单,点击链接,等等..”
  • 萤火虫 - (Firefox)的“编辑,调试和监控CSS,HTML和JavaScript住在任何网页”
  • 哈德逊 - “建筑/测试软件项目[...]外部运行工作的监督执行”
  • 的LiveHTTPHeaders -查看和编辑HTTP请求头活
  • JUnit的 - “框架编写可重复的测试”

参考材料(均导通及离线)

  • 列表除了 - “谁的人使网站”
  • 爪哇- TIJ

Answer 1:

  • 服务器端
    的Tomcat6
  • CMS
    Drupal的 (在prilim相位不是必需的)
  • 编辑/ IDE
    NetBeans的 (适合初学者)
  • 通用工具/公用事业
    (几乎一切都在NetBeans的 ......去了以后)
  • 导演(特殊用途)工具/公用事业
    (几乎一切都在NetBeans的 ......去了以后)
  • 测试和QA工具/公用事业/技术
    JUNIT和使用萤火虫 (先做手动测试)
  • 参考材料(均导通及离线)
    头扎系列的JSP ,JavaScript等
    SCRIBD (在线)


Answer 2:

对于Web开发我使用(并建议)以下内容:

  • JSP / Servlet API的
  • Spring MVC的
  • JQuery的
  • XHTML和CSS
  • FitNesse的

至于资源,所有这些技术是有据可查的在各自的网站,唯一的例外是XHTML和CSS为此我建议http://www.alistapart.com 。

至于编辑的IntelliJ都和(我相信)Eclipse中有很好的HTML,CSS,JSP和JavaScript编辑器。

还使用Firefox(布赖恩曾建议),同时与Web开发插件和Firebug的 - 这两个缺一不可。



Answer 3:

Tomcat和Jetty的都是知名/支持servlet容器。 如果你正在构建一个可部署为客户可能要测试两个,如果你不控制部署。

为了进行测试,检查(使用JUnit / TestNG中的常规的单元测试框架一起) Watij和/或的HtmlUnit 。 这将使您自动实际的Web /浏览器交互,将节省您的悲伤的世界,从长远来看。 缺点是,你必须在设置你的测试投资一些时间。

相关的自动化测试,我认为你需要一个自动构建/持续集成系统。 许多比比皆是,在Java世界。 两种最常见的的CruiseControl和哈德森 。

对于很多上面的,标准的Java /开发工具的应用如“标准”的IDE(Netbeans的/ Eclipse中/的IntelliJ - 的IntelliJ是值得付出的,顺便说一句)。 这同样适用于CMS和有很多资源本网站的利弊上/ SVN / GIT中/水银等的利弊值得一检查CMS的选择与你的IDE集成。

我想看看萤火虫的简化(在Firefox)的开发。 它使前端开发容易得多。 的LiveHTTPHeaders将缓解有关HTTP传输问题的诊断。



Answer 4:

CMS

  • 乌龟SVN

编辑器/写入

  • 日食

通用工具/公用事业

  • Maven的(构建和部署工具)
  • 巡航控制
  • GWT / EXT-GWT / ICEFaces的 - 网络组件技术
  • 春天 - 依赖注入框架
  • 休眠 - ORM
  • 的Axis 2.0 Web服务开发工具包
  • Jboss的

导演(特殊用途)工具/公用事业

  • log5j - 用于记录

测试和QA工具/公用事业/技术

- Watij
- Firebug
- QTP for automated testing
- Junit Perf (Junit test cases for performance testing.)

参考材料(均导通及离线)

  • 每个技术的Java文档
  • 谷歌ofcourse :)


Answer 5:

尝试vcl.js都在一个(前端和后端)企业Web开发工具,

  1. 可视化组件库 - 包括网页,网格,输入,量表,图表及更多
  2. 纯JavaScript
  3. 单页应用
  4. .NET后端
  5. 数据绑定
  6. Twitter的引导
  7. 简单的数据库查询执行
  8. 路由
  9. AMD - 模块装载机

我猜的想法是,你不需要学习jQuery,Sammyjs或任何其他框架



Answer 6:

通过slashmais的要求编辑第一段:这个答案是不是真的与别人一致,并改写问题。 它更像是一个补充,其他的答案。 我认为,个人喜好是选择技术的真正重要的。 我认为这是(DIS)喜欢一些东西,并选择对应的技术 。 答案的其余部分给出了例子:


例如,假设我相信开发商的行动应在实时检查尽可能,如果可能的话立即得到反馈,而且完成,并避免过早这么多的错误。 这(DIS)的喜好决定了一些喜好:

  • 使用静态类型语言(如Java)
  • 使用该编译一个IDE您键入(如Eclipse)
  • 任何XML必须经过验证,通过严格的XSD。 如果内容有其他的参考信息(比如Java代码),那么就应该检查(如Spring检查bean类)。
  • 对于视图技术,因为它依赖于我的Java代码,我必须有一个验证,包括我的实际Java代码。 一个想法可能是代码我用Java视图。 (如检票)。
  • 我的性需要在属性文件进行翻译。 但在我的代码(或视图)使用字符串密钥是不能接受的。 我会运行一个小工具,创建从每个属性文件的java枚举和我的代码将引用枚举。
  • ... 等等

其他的例子,假设我强烈希望“ 约定优于配置 ”。 也就是说,我同意遵守stricts规则,在我的项目,获得更管道手工做(因为默认值适合):

  • Maven是首选构建工具。 这将对许多制约因素,而且还提供了即装即用许多“构建”功能...
  • 对于Web应用程序,我无法使用Struts 1,因为他们是在struts-config.xml这些巨大的配置文件,主要与管道代码。 我肯定会切换到类似Spring MVC的,具有用于URL映射到控制器默认值。
  • 等等 ...

其他的例子,假设我相信这么多的模型-视图-控制器分离,为了清楚和再利用,我想舒展了一点。 我可以使用:

  • 在视图中,我会完全分开出来我的模型(干净的HTML,无格式,没有脚本),我的看法(或格式,只有外部CSS),和我的控制器(JavaScript的,使用非obstrusive JavaScript的政策)。
  • 在web应用程序,我可以用Spring MVC分离以及这些层。
  • 在业务(这个例子有点constrived :-)),我可以有一个丰富的域模型,广泛地使用命令模式(“控制器”),并明确地公开我的业务服务的接口API(“意见”)。


文章来源: Java beginner web-development toolkit/environment