1

我应该为 Hibernate DAO 类使用什么 Spring 注释,以便在扫描过程中找到它们?@Repository、@Service 还是 @Component?我无法弄清楚其中的区别。我现在在 Spring 2.5.6 上。

PS有人可以指导我快速了解图层的想法吗?我只听说过表示层之类的东西,但不完全理解我应该称之为什么以及业务层是什么?还有其他吗?

4

3 回答 3

2

@Repository将是我的建议。

表示层是指 Web UI,因此应该使用@Controller注释。

服务使用 POJO 接口实现用例;将此标记为@Service。控制器将使用服务来完成用例。

于 2011-06-13T19:22:26.520 回答
2

这并不重要,但这@Repository是一个不错的选择。Spring手册有这样说:

从 Spring 2.0 开始,@Repository 注释被引入作为任何满足存储库角色或原型的类的标记(又名数据访问对象或 DAO)

于 2011-06-13T19:26:11.890 回答
0

在核心 Spring 中,我认为没有任何区别。通常,这些原型注释用于auto-detection when using annotation-based configuration and classpath scanning(来自 Spring 文档)。可以有一些软件来使用它们,但在没有这样的软件的情况下,我选择对我最有意义的刻板印象。在 DAO 的情况下,我通常选择@Component,虽然@Repository也是一个不错的选择。

于 2011-06-13T19:26:53.530 回答