我正在开展一个项目,我们正在确定多个批发商后端系统接口的规格。以下是我们正在使用的内容,
最初,我考虑过为我们的每个批发商创建数据库,但未来可能有1000个批发商,这是性能和存储的最佳选择。 直接查询批发商数据库而不是在本地存储数据会更好吗?我们可以这样做并仍然保持数据库不可知吗? 这种实现最好的技术堆栈是什么?我需要某种ORM工具。
首选基于Java的框架和技术。
感谢。
答案 0 :(得分:0)
如果您想创建一个可以切换数据库的软件,我建议使用Hibernate(如果您使用.Net,则使用NHibernate。)
Hibernate是一个不依赖于特定数据库的ORM,这使您可以非常轻松地切换数据库。它已经在大型应用程序中得到证明,并且很好地集成在Spring framework中(但也可以在没有Spring框架的情况下使用)。 (Spring.net是等效的,如果使用.Net)
Spring是构建大型可扩展应用程序的良好技术堆栈(包含IoC-Container,数据库访问层,事务管理,支持AOP等等)。
Wiki为您提供简短的概述:
http://en.wikipedia.org/wiki/Hibernate_(Java)
http://en.wikipedia.org/wiki/Spring_Framework
直接查询批发商数据库会更好吗? 在本地存储他们的数据?
这取决于访问远程数据的可用性和延迟。数据库本身有几个可以通过多个服务器实例保持同步的可能性。问问自己,如果批发商数据库(部分)离线,应该/将会发生什么。也许并非所有数据都需要重复。
我们可以这样做并且仍然与数据库无关吗?
是的,请参阅我的回答与ORM(N)Hibernate相关。
这种实现最好的技术堆栈是什么?
“最佳”取决于您的要求。我喜欢春天。如果你使用.Net,内置的ADO.NET实体框架也可能适用。