gpt4 book ai didi

java - 如何高效开发Java Web应用?

转载 作者:行者123 更新时间:2023-12-02 20:19:01 26 4
gpt4 key购买 nike

我正在开发我的第一个 Java Web 应用程序(Spring/Hibernate/Freemarker),我唯一关心的是开发速度。

我曾经使用 PHP 进行开发,只需重新加载浏览器即可看到结果。对于 Java,我需要始终在 IDE 中单击“更新资源”才能查看对模板所做的更改。在我看来,这种开发方式确实效率低下,重新部署需要几秒钟的时间。

此外,我不是准备模板的人 - 这只是一个图形人员,他也想测试它们。他是否需要拥有自己的应用程序服务器并不断重新部署应用程序,或者是否有一些更多的“PHP”方式,您只需“重新加载”页面?

最佳答案

是的,与 PHP 或 Rails 等动态语言和平台相比,开发速度是一个主要问题和缺点。显然 Java 在不同领域获胜,但这里有一些提示:

  1. 优先选择单元测试而不是重新部署 - 如果您对单元测试感到满意,则可以大大减少重新部署的数量。我发现自己只在完成后部署完整的功能一次。所有逻辑都已经过测试,因此我不必一遍又一遍地部署,浪费几秒钟或几分钟。

    此外,当我开始使用 GUI 时,我不必返回后端,因为现在它可以工作了。一旦我看到重复的重新部署,我就会尝试使用 JUnit 来测试它。

  2. 使用更好的框架。 Spring MVC 非常保守,尽管它非常好且纯粹。我听说过Play! framework可以通过动态重新编译类来缩短周转时间。

    另一方面,像 Grails 这样的现代 JVM 框架可以加快您的开发速度,因为它们为您创建域、CRUD 和 GUI。

  3. 某些框架提倡模板的松耦合。如果您使用 Freemarker 或普通 JSP,则很难在 GUI 上单独工作。但是像 Wicket 这样的框架Java 代码与用纯 HTML 编写的模板在很大程度上分离。另外,我目前正在开发一个仅提供静态 HTML 服务的应用程序,动态内容通过 AJAX/REST 服务和 JavaScript 进行更新。

  4. 考虑购买JRebel并查看 JVM 中内置的热交换功能。有时更改代码并不意味着重新部署。

  5. IntelliJ IDEA当窗口转到后台时,可以动态更新已修改的资源(HTML、JavaScript)。这意味着当您将窗口从 IDE 切换到浏览器时,您的资源就会更新。也许其他 IDE 也可以做到这一点。

关于java - 如何高效开发Java Web应用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9341256/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com