One of the basic tenets of CQRS, as I understand it, is that commands should be behaviour-centric, and have a value in the business or the UL, and not data-centric, ie., CRUD. Instead of focusing on updating a customer, we have commands like CustomerHasMoved. What if you have CRUD screens which are there to correct certain data. For example, we need to change the name of a customer which is misspelled. This doesn t really have much value in the business. Should this just be under the umbrella of an UpdateCustomer command?
Does hibernate has support for hierarchical data in a database where you use a parentId you use a parentId and an orderId you use Modified Preorder Tree Traversal