DAO 模式和模型对象
我已经查找了很多关于DAO模式的信息,我明白了它的重点。但我觉得大多数解释并没有说明整个故事,我的意思是你实际上会在哪里使用你的DAO。例如,如果我有一个User类和一个相应的UserDAO,它能够为我保存和恢复用户,这是正确的方法:
控制器创建 User 对象并将其传递给 UserDAO 以将其保存到数据库
控制器创建 User 对象,并在其构造函数中,用户对象调用 userDAO,以便将自身保存到数据库中
这是一个代码异味,你缺少一个额外的类“UserManager”,控制器将要求它创建用户。用户管理器负责创建用户并要求用户DAO保存它
我真的觉得第三个选项是最好的,因为控制器负责的只是将请求委托给正确的模型对象。你最喜欢的方式是什么?我在这里错过了什么吗?