1

假设我有用户实体。我想检查数据库中是否存在用户 ID。我知道如何检查,但在哪一层?什么是最好的和更容易理解的层?

在我看来,应该是Controller层。但我不认为它会一帆风顺。我从未见过在示例项目中签入用户控制器类的额外方法。也许我错过了一些东西,你怎么看?

4

2 回答 2

2

它应该在模型端。控制器应该只控制从模型到视图的流程。

一旦您从存储库中获取数据,它应该是您的服务,它应该检查您是否获得了数据并做出相应的反应。

于 2016-01-03T08:39:33.663 回答
-1

在我看来,这取决于您希望对结果做什么。例如,如果您只想检查用户是否存在,那么我会在 DAO 上放置一个方法。

但是,如果您要说我有一个用户,那么现在我要做点什么。我建议只加载用户并检查 null 。这样你就不会去数据库两次了。如果您的缓存设置正确,则不是真正的问题。我假设没有启用缓存。

我总是建议在您的控制器和数据层之间设置一个层,只是为了提供特定于域的逻辑。让您的控制器自由进行路由,让您的数据层保持清洁,仅用于数据访问。

于 2016-01-03T14:14:52.920 回答