您能否告诉我在atg中使用ChangeAwareList和ChangeAwareMap的用途?它试图解决什么问题。我尝试阅读文档,但无法找到有关相同的详细信息。
答案 0 :(得分:2)
Tag2
和ChangeAwareList
确保父级ChangeAwareMap
在添加或删除关系时,更新父项时,将从数据库中插入/删除新关系。
如果未使用RepositoryItem
和ChangeAwareList
,那么当父项更新/存储到存储库/数据库时,您必须有一些逻辑来遍历每个现有项关系并将它们与更新的关系进行比较,以确定需要从数据库中删除哪些关系。这样做比较麻烦,并且执行效果不如“变更意识”。
这是观察者设计模式的一个例子。