我们正在开始一个需要大量数据处理的金融项目(如日常运行程序,分类,路由,过滤大量数据)。
我的问题是,使用Hibernate作为JPA提供程序,哪里应该最好处理数据?业务对象或数据库批处理 更多细节:
业务对象处理大多数处理逻辑,然后只触发CRUD到数据库
数据库处理大部分处理逻辑和CRUD到数据库表,业务对象句柄
在可维护性和可扩展性方面,哪一种方法更好?
答案 0 :(得分:1)
您应该几乎总是从适当的业务域层开始,然后在需要时妥协到数据库脚本。如果没有别的,它将帮助您计算您的域逻辑。
您也可能会发现您不需要使用数据库脚本,并且业务对象层的工作正常。
使用域层的一大优势是,您可以在不对处理逻辑进行大量更改的情况下重构数据库。例如,如果您需要设置数据库的副本以读取查找逻辑(客户信息等)以及用于推送写入的单个主数据,那么如果您有域层并且完全重写将很容易做到这一点如果你在数据库脚本中实现。
编写应用程序,然后优化。