我应该将@Repository Spring注释用于负责在文件系统上保存数据的bean

рüф*_*ффп 4 java filesystems spring repository-pattern

我的应用程序中有三层:

  • REST界面(JBOSS RestEasy)
  • 服务层(Spring Services)
  • 持久层(Spring beans)

在持久层中,我将实现两个类(实现相同的接口):一个是a MemoryStore,另一个是FileSystemStore.

这些实现是否应该注释@Repository

这两个类将没有任何数据库访问权限.它可以在以后实现到DatabaseStore,但现在情况并非如此.

更一般地说,注释是@Repository必须用于任何持久性Bean还是仅用于访问数据库的用户?

Eld*_*ael 6

javadoc类说:

当与PersistenceExceptionTranslationPostProcessor一起使用时,[with @Respository]注释的类有资格进行Spring DataAccessException转换.为了工具,方面等目的,注释类还阐明了它在整个应用程序体系结构中的作用.

我相信你必须使用@Repository注释你的类,如果你需要特殊的异常翻译(来自JDBC,Hibernate或其他)或你自己的技术(但这意味着你必须扩展spring以了解这一点)否则,只需注释@零件.

在您的特定情况下,我认为使用@Repository注释是正确的,因为您的接口是为数据持久性而设计的.