gpt4 book ai didi

Java EE 和桌面应用程序

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:30:37 24 4
gpt4 key购买 nike

我是 Java 的新手,刚开始使用一些简单的代码。

我在 Linux 机器上,使用 vim 编辑器,使用 javac 进行编译,'java' 用于运行程序。

基本上,目前我正在寻找使用 Java 构建桌面应用程序的方法。我听说过 Java (EE/SE/ME),我对它们的假设是:

  • “核心 Java”是“基本”Java 语言(具有所有关于变量的规则,循环、方法类等)。
  • Java SE 适用于桌面应用。
  • Java EE 适用于 Web 应用程序(使用 HTTP 协议(protocol))。
  • Java ME 适用于移动应用程序。

然而,我从Difference between Java SE & Java EE开始知道它们之间的区别在于“规范”。

所以我的问题是,我是否也可以使用 Java EE 创建桌面应用程序?或者它们仅用于创建 Web 应用程序?

最佳答案

Java EE 是大量技术的集合,它们共同构成了一个或多或少连贯的框架,用于构建企业应用程序。

现在在企业中,服务器应用程序被广泛使用,许多技术都专注于服务器功能和/或多用户。服务网络请求只是其中的一部分,还有一些功能,例如处理消息 (JMS) 和服务器远程方法调用(远程 EJB)。

像 GlassFish 或 JBoss AS 这样的完整 Java EE 实现并不常用于桌面应用程序(除非它是用于个人桌面的应用程序,但它是基于浏览器的)。

然而...

构成 Java EE 的几乎所有技术都可以在 Java SE 之上独立使用,并与图形用户界面结合使用。

例如,Java EE 中有一个名为 JPA 的 ORM 框架,它使得在数据库中存储对象变得相当容易。数据库,可能是嵌入式数据库,当然可以与桌面应用程序一起使用,这通常很有意义。例如。电子邮件应用程序可能会将邮件存储在这样的数据库中。 JPA 在其规范中明确包含有关可在 Java SE 中使用的部分。

Java EE 中还有一个名为 CDI 的依赖注入(inject)框架。除其他外,这使得隔离依赖关系并掌握它们变得容易。它非常适合 MVC 图形应用程序,例如在 Controller 中获取模型。与 JPA 一样,CDI 明确支持 Java SE。

作为最后一个示例,默认情况下 Java EE 要求存在 JMS,但在这种情况下,JMS 甚至不是 Java EE 的特定子规范。 Java EE 只需要存在 JMS 提供程序,因此 Java SE 自然可以使用 JMS(JMS 中甚至有 API 只能在 Java SE 中合法使用)。在某种程度上,消息传递可以成为架构模式的一部分,这种模式在桌面应用程序中和在服务器应用程序中一样有用(例如,桌面工具包 Cocoa 大量使用它)。

有更多的 Java EE 技术可用于桌面应用程序,但我希望以上内容能让您有所了解。

关于Java EE 和桌面应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8730720/

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