我目前正在为 Web 应用程序构建一些集成服务。外部java应用程序生成一个提供数据的数据源,数据根据需要进行处理,然后输入到sql服务器数据库中。数据在这里进行管理,并用作 wcf 和 http Rest 服务的基础,这些服务由 Web 应用程序、移动设备等访问。
这是当前设置。我目前正在更改此修改,因为我们在 java 系统和 sql server 数据库的集成方面遇到了一些问题。我们面临的主要问题是所需数据的标准,它可能会缺少字段等。当前的集成是将逗号分隔的文件放置在 ftp 服务器上,拾取文件,处理文件,数据处理并将数据插入到SQL 服务器。我们目前“烧毁”的地方是数据被插入到 SQL Server 数据库中,并且数据的质量未达到必要的标准和/或质量。
因此,这个流程正在改变,并寻找选项来实现现代化并使集成服务更加强大。
所以我正在寻找改进上述内容的建议和建议?
我想到的一些选项是:
- 公开 java 系统调用的 wcf 服务,数据通过 SOAP 协议(protocol)传递给它,然后在插入到 sql server 之前在服务中验证数据
- 所提供数据的格式从常见的分隔文件转移到 xml 文件,并且在处理数据之前,根据架构对 xml 文件进行验证
还有其他建议吗?
最佳答案
您的两种解决方案都无法从根源上解决数据质量问题。我会更仔细地查看生成数据的应用程序,并在插入数据库之前将验证放在那里此外以验证它。您希望在 INSERT 之前进行验证,因为您永远不应该信任客户端。但客户在向您发送数据时应该遵守契约(Contract)。
Web 服务提供的其他服务所没有的优势之一是可以实时插入数据库。让源应用程序将其请求发送到此代理服务。它验证请求并实时插入它们。不再批处理了。
关于java - java系统与sql server之间的数据集成服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12437890/