【问题标题】:Java Stand alone Client ApplicationJava 独立客户端应用程序
【发布时间】:2012-08-09 19:22:23
【问题描述】:

我只是一名 Java 开发人员,现在我需要构建一个需要与数据库交互的独立应用程序(不是 Web 应用程序,而是需要在桌面上运行的客户端应用程序)。有人可以指出哪种技术/框架最适合帮助我实现这一目标吗?

是否有 Java 框架可以帮助您与简单的数据库(例如 MySQL)进行交互,并帮助您创建非常好的 GUI,然后可以将其转换为 Windows .exe 可执行文件?

【问题讨论】:

  • 你应该意识到Java是一个单词而不是一个首字母缩略词,因此它应该写成“Java”而不是“JAVA”。

标签: java database desktop


【解决方案1】:

Java 程序永远不能转换为.exe。输出通常是jar 文件 只要系统上有JDK,它就可以在任何OS 上运行。

您可以在 JAVA 中使用 Swing 来创建良好的 GUI,并且可以在 JAVA 中使用 MySql library 来轻松连接到 MySQL。

【讨论】:

    【解决方案2】:

    补充 Byter 的回答:

    您将使用两个库/框架。一个用于 GUI,另一个用于数据库访问。作为 GUI 的一个选项,还有 SWT。

    对于数据库访问可以简单地使用java内置的JDBC和mysqls jdbc驱动。

    【讨论】:

      【解决方案3】:

      我建议您正确分层应用程序并分阶段执行操作。

      您可以在没有 UI 的情况下使数据库部分正常工作。我建议你先这样做。开发它,测试它的鼻涕,然后把它放在一边。

      您需要在 UI 和数据库之间建立一个服务层。它将管理请求、验证、安全、事务等。开发它,测试它的鼻涕,然后把它放在一边。

      只有在其余部分都准备好后,您才能继续使用 UI。

      【讨论】:

        【解决方案4】:

        您要求提供框架和工具:

        • 首先我会使用Swing,因为它是标准并且在所有开箱即用的平台中都得到了很好的支持
        • 目前我想我会选择Better Swing Application Framework (BSAF)。它重量轻,可扩展性很好
        • 为了设计 UI,我建议使用 Eclipse 和 Window Builder 插件。它在双向编辑方面做得不错(意味着您的代码中没有被阻塞的区域,它还能够解释现有的 GUI)
        • 另一种方法是手动绘制 UI,并使用自定义布局管理器(如 JGoodies FormsMigLayout)实现它
        • 为了访问数据库,我还建议使用 ORM 映射器,例如 EclipseLink(从未使用过)或 Hibernate(非常喜欢它)。
        • 我总是会通过添加服务层在 UI 和数据库之间画一个分离层。为什么?它大大提高了可维护性!这可以通过Spring Framework(可以与您的 ORM 映射器和客户端计算机上的所有内容一起运行)或Enterprise Java Beans(如果您计划使用客户端将连接到的应用程序服务器)很好地完成。李>
        • 为了交付您的应用程序,您可以使用像 Nullsoft installer 这样包含 JRE 的通用安装程序工具,然后使用像 Launch4J 这样的另一个工具包装应用程序(尽管我从未尝试过这个)。

        如果您是 Java 或一般面向对象编程的新手,请阅读 Effective Java(通常用于 Java)和 Martin Fowlers 对几个 presentation patterns 的描述 - 这里我最喜欢 passive view

        确实有很多东西要学,但如果你想“正确”地做,那我认为没有办法。

        【讨论】:

          【解决方案5】:

          如果您是 Java 新手,我建议您使用易于使用的 IDE 开始。我会选择 JDeveloper 是官方的 oracle IDE,它几乎拥有开发桌面或 Web 应用程序所需的一切,即使是使用可视化设计器也是如此。它是免费的,我认为它需要您注册 oracle 网站,但它是值得的。

          这里有一个关于如何使用 JDeveloper 和 swing 构建小型可视化 Java 应用程序的教程:http://docs.oracle.com/cd/E18941_01/tutorials/jdtut_11r2_2/jdtut_11r2_2.html

          至于数据库技术,最好是使用 ORM。我推荐带有 EclipseLink 的 JPA,它已经包含在 JDeveloper IDE 中,这里有一个关于如何做到这一点的教程:http://st-curriculum.oracle.com/obe/jdev/obe11jdev/ps1/ejb/ejb.html

          但是,如果您不想学习 ORM(您真的应该最终),那么只需使用普通 JDBC(网络上有大量关于如何做到这一点的教程)

          JDeveloper 的替代品是 Netbeans,它也是官方的 oracle 工具,更轻巧。

          【讨论】:

            【解决方案6】:

            询问“Java 中是否有一个框架可以帮助一个接口与一个简单的数据库进行交互”,你会得到很多答案。最简单的响应是“查看 JDBC”,几乎所有其他框架都将利用它与数据库进行通信。

            我不确定我是否会推荐一种同时执行数据库连接和 GUI 内容的框架。保持它们解耦。和上面的 Byter 一样,我发现 Swing 运行良好。

            如果您要问的是报告功能,我经常听说 Jasper 报告。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2010-12-25
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2011-04-08
              • 2011-04-09
              • 2011-09-11
              相关资源
              最近更新 更多