数据库和领域建模
我最近看了banq对于数据库和领域建模的分析的文章。似乎有点想法。想提出自己的意见请大家看看自己的思路是否正确
比如说在一个多对多应用中 假设我们先从设计数据库表开始的话,比如有 用户 用户角色 和角色 三张表
这个时候,我用HIBERNATE影射当前表应该生成是4个PO对象和4个xml文件,这4个对象应该是 1用户PO
2用户角色PO 3用户和角色的ID对象(被用户角色PO封装) 4角色PO
那么当我们对用户进行赋角色的时候(一用户多角色) 思路是先删除用户当前拥有的角色,在增加当前对他赋的角色
忽略删除后,我们只剩下新增,那么,我们新增的对象应该是2(当前1没有级连设置) 但是 2包含3 首先我们要生成3的对象。可是 3又包括1和4 那么我们还要生成1和4的对象
这个时候1的ID是确定的,4的ID有可能是多个,根据从页面选择的值来确定,然后我们会得到许多3的对象。然后要对他进行持久化save操作。
这个就是我处理一个多对多时候基本上要做到的。
但是,我是觉得这样子特别的麻烦,要对2save。要得到3对象。得到4对象必须有1个4对象,然后在组合。然后将3的多个对象防到容器中,循环掉用save方法。
如果按照BQ所说的领域建模。可以说先从对象建立开始。建立符合需求的对象。然后影射它的表。 但是这样建立后我想问的是 到底可以简单到多少或者有什么好处,请各位大哥帮忙分析下么?