gpt4 book ai didi

java - 使用 MySQL 的简单 Java EE 客户端桌面应用程序和 Web

转载 作者:行者123 更新时间:2023-12-01 14:40:10 25 4
gpt4 key购买 nike

首先,我不得不说,我对 java ee 完全陌生,对 java 也完全陌生。我必须用这个来做我的研究项目。首先,我需要一个与远程 mysql 数据库连接的标准桌面应用程序。第二个不太重要的是也与数据库连接的 Web 应用程序。问题是根据 java ee 标准,信息流应该是什么样子?像客户端应用程序>远程> java beans>本地> mysql之类的东西?对于这个简单的项目,您推荐使用什么 api 来处理 ORM 等?最后一个我需要一些关于 java ee 的教程或书籍。

最佳答案

你实际上给出的要求和约束太少,甚至无法选择技术堆栈。

根据你的帖子我可以提供什么建议:

尝试分解数据访问层 (DAO),因为您可能会在桌面和 Web 应用程序之间共享它。为此,您有 2 个解决方案:

解决方案 1:在两个应用程序中嵌入 jar 模块:
这意味着该组件还必须可以在服务器容器(Java SE)之外运行。我建议不要使用 Java EE,而是使用 Spring,因为 Java EE 尚未提供正确管理持久性上下文的独立“轻量级”容器。

Spring 将允许您定义一个带有数据源(插入远程数据库)和容器事务管理(恕我直言,在容器外部使用 ORM 并不是很有趣)的数据访问组件,该组件将单独运行(桌面应用程序)并且在任何 servlet 容器(tomcat 等)(Web 应用程序)内,唯一的区别是配置文件。

它将给出:

独立:客户端 [Swing View > Controller > Spring 管理的 DAO] > 远程数据库
web :客户端 [html] > Web 服务器 [任何 View 技术(例如 spring mvc)> Spring 管理的 DAO] > 远程或本地数据库

解决方案 2:SOA 架构,其中共享数据访问组件实例部署在 Web 服务器上,并通过 Web 服务暴露给独立应用程序:

独立:客户端 [swing View > Controller ] > http > Web 或 Java EE 服务器 [REST 或 SOAP Web 服务 > DAO] > 本地或远程数据库

网络:

  • 客户端 [html] > Web 服务器 [任何 View 技术 > DAO] > 本地或远程数据库
  • 客户端 [RIA(Ajax、Flex 等)] > Web 服务器 [REST Web 服务 > DAO] > 本地或远程数据库

    否则,如果你并不真正需要 ORM,我建议不要使用它,因为与它给你带来的优势相比,学习曲线相当长。 (Ofc,这取决于您的上下文和要求:数据模型的复杂性、现有数据库或新数据库、您的应用程序专用或共享的数据库、现有存储过程或触发器、高并发性等)

  • 关于java - 使用 MySQL 的简单 Java EE 客户端桌面应用程序和 Web,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16048352/

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