以一个添加用户场景为例子。
首先前台传来一个user对象,
然后需要对这个对象进行检验,
检验用户名全英文字母,
查询数据库,用户名不存在,
则可以进行插入操作
这样的场景,应用层,领域层应该怎么写,求各位给出具体一点的代码,谢谢。
service对应应用层,调用entity实体层,存储库repository,dao层store。
还有值对象怎么使用。
以一个添加用户场景为例子。
首先前台传来一个user对象,
然后需要对这个对象进行检验,
检验用户名全英文字母,
查询数据库,用户名不存在,
则可以进行插入操作
这样的场景,应用层,领域层应该怎么写,求各位给出具体一点的代码,谢谢。
service对应应用层,调用entity实体层,存储库repository,dao层store。
还有值对象怎么使用。
8 回答6.4k 阅读
3 回答2.3k 阅读✓ 已解决
2 回答3.3k 阅读
2 回答3.9k 阅读
3 回答1.7k 阅读✓ 已解决
1 回答2k 阅读✓ 已解决
2 回答1.9k 阅读
1.首先在领域层写User的Poco对象,然后在领域层User对象的逻辑中有个CreateUser方法,传入User对象,对传入的User对象的属性赋值到this,然后返回this。
2.在仓储层User仓储中实现两个方法,第一个方法是查询数据库这个用户是否存在,第二个方法是AddUser,这里要注意的是AddUser利用数据访问框架的预添加,而不是完成真正的持久化。
3.在应用服务层中的CreateUser方法中要传递UserDTO对象,首先对UserDTO做检查比如英文,然后将UserDTO属性赋值给User对象属性,然后调用仓储中的检查用户,然后调用领域逻辑中的CreateUser方法,然后使用仓储调用AddUser方法,最后利用数据库框架的持久化方法完成持久化。
4.值对象可以把它理解为就是一个领域对象,有自己的属性和方法,然后把这个值对象做成包含它的领域对象的一个属性。