【问题标题】:How to execute business objects in a correct order如何以正确的顺序执行业务对象
【发布时间】:2013-11-27 22:47:37
【问题描述】:

假设我有两个业务对象或实体:人员和地址。班级人,班级地址

Person *-----* Address

现在,有人填写了 Web 表单并输入了他的个人数据(姓名、姓氏、街道)。所有数据都通过查询字符串正确传输到网络服务器。

现在,我想知道如何使用业务类和方法以正确的方式存储这些数据? 哪种方法是正确的?我怎么知道正确的呢?

第一个选项:

$person = new Person(name, surname)  
$person.setAddress(street)
$person.saveToDB();  
// within setAdress an instance of Address-Class -> .setAddress(street){new Address(street)}

或者

第二个选项:

$address = new Address(Street)  
$address.setPerson(name,surname)
$address.saveToDB();   
// within setPerson an instance of Person-Class -> setPerson(name,surename){new Person(name,surname)}

我如何知道正确的顺序?我对此有点困惑! 以及如何处理 DB-Insertion,因为我融化了 2 个 BO,并且必须将其保存在数据库的两个不同表中?我完全搞砸了!

【问题讨论】:

    标签: database object uml


    【解决方案1】:

    取决于您的域。在某些域中,地址将归个人所有(例如运输系统),而在其他域中,该人将由地址所有(例如地图应用程序)。因此,正确的解决方案取决于您的域。

    其次,有许多 orm(对象关系映射)框架可以为您处理所有数据库交互。选择与您的语言和品味相匹配的语言并使用它。

    【讨论】:

    • 好的,在对 ORM 主题进行了一些搜索之后,我终于找到了关于 martinflowers 架构数据映射器模式的答案......谢谢您的回答,这让我进入了正确的方向!
    猜你喜欢
    • 2021-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-01
    相关资源
    最近更新 更多