【问题标题】:Architecture Java EE ? many ressources : database, xml架构 Java EE ?许多资源:数据库,xml
【发布时间】:2011-02-09 20:19:19
【问题描述】:

我有一个 Java 应用程序,现在我想让它成为一个 Web 应用程序。 现在我在考虑如何制作这个应用程序的架构。

其实我有很多资源,matlab、exe文件和XML文件以及一个MySQL数据库。 所以我们将有一个 3 层架构。

客户端:浏览器
处理:Java EE 服务器(可能是 Servlet 和 EJB 容器)
数据:matlab、exe 文件和 XML 文件以及一个 MySQL 数据库

那么,即使我们连接了多个同时发送许多查询的客户端,我如何才能在没有问题的情况下创建此应用程序?

知道处理是调用EXE并读写XML文件,然后执行MATLAB。

更多细节

输入-资源-> 输出

图像(查询)-exe-> XML

XML -JDOM-> Java 对象(列表)

Java 对象 -JDOM-> n 个 XML 文件

n 个 XML 文件 -JDOM-> txt 文件

txt 文件 -matlab-> txt 文件

txt文件-MYSQL->java对象(列表)

txt 文件 --> 图片(结果)

【问题讨论】:

  • exe并发调用会失败吗?因此,如果您有多个用户由于 Web 请求而运行该 exe,那么该 exe 是否能够处理它? exe对本地目录结构有限制吗?
  • 不知道,没测试过
  • 好的 - 如果 exe 被异步启动有关系吗?您是否需要将数据从 exe 显示回 Web 客户端,还是 exe 出于某种原因只需要启动某个进程?
  • exe文件只会做一些处理(生成一个xml文件)
  • 如果并发 EXE 存在问题并且您的用户可以等待处理完成,您可以将请求添加到队列并进行批处理。

标签: java architecture jakarta-ee ejb-3.0 ejb


【解决方案1】:

这是一个相当广泛的问题。所以我会保持我的回答在一个高水平,当你有更多问题时,我们可以更深入地挖掘。

最初我会这样构建应用程序。

  1. 选择一个 MVC 框架。我会选择JSF2,但其他都可以。您的视图和控制器层将在此处定义。
  2. 至少创建 3 个 DAO 类 - 一个用于从 XML 读取数据,一个用于从 mySql 读取数据,一个用于读取文本文件。要解析 XML 文件,您可以使用 XPath,当然还有 SQL 从数据库中获取数据。
  3. 创建MDB 以通过JMS 异步启动EXE 进程。
  4. 将应用程序打包为 EAR 文件。

您可以使用的工具:

  1. IDE 的 Eclipse
  2. JBoss-AS(或您有权访问的任何其他容器)
  3. 某种构建/打包工具(ANT、Maven 等)

我不熟悉图像处理,因此无法对此部分发表评论。但是,我认为您需要首先将您的设计分解为各种组件。这就是为什么我开始列出我能想到的那些没有足够细节的东西。所以图像查询将是组件之一。尝试创建一个系统的黑盒图,每个主要组件都进出。之后开始开发它们中的每一个,然后我敢打赌这里会有更多的人可以帮助您解决更具体的问题。这有意义吗?

【讨论】:

  • 你能再看看我的问题吗,我添加了一些细节!!
  • 这就是问题所在,图像处理与其他事物不同,所以您还有其他意见吗?因为txt和xml文件的I/O很多,调用matlab ...
  • 是的,对于文本文件,您需要创建文件解析器(从文件中读取行,使用某些令牌解析它们),对于我上面提到的 XML 文件,您可以使用 XPath。
  • 有关信息,我已经使用 SWING(桌面应用程序)创建了应用程序,现在我想将它变成网络!但我不知道我是否必须看看 JSP/Servlet、EJB 或一些框架。
  • JSP 是您在浏览器上显示数据的纯视图层。 MDB(正如我上面提到的消息驱动 bean)将是一种 EJB。您可以开始在 google 上查找 JSF 教程。我并不想含糊其辞,但我不知道我可以提供哪些信息来帮助您,而不会让它听起来像一个教程。 :-)
猜你喜欢
  • 2013-08-02
  • 2014-04-12
  • 2017-05-14
  • 1970-01-01
  • 1970-01-01
  • 2011-01-21
  • 2018-03-03
  • 1970-01-01
  • 2012-04-11
相关资源
最近更新 更多