从 @Repository 到 RAP 行为池,ABAP 里的数据访问边界应该怎么设计
ABAP 没有 Java Spring 里完全等价的@Repository注解。更准确地说,ABAP 没有一种放在普通 ABAP class 上的标准注解,可以让运行时自动把这个 class 识别成 repository bean、自动加入 IoC 容器、自动完成 component scanning、自动做依赖注入、自动把底层数据库异常翻译成统一的数据访问异常。Spring 官方文档里,@Repository是一种 stereotype annotation,它可以用于传统 Jakarta EE 风格的 DAO class,也可以被团队按自己的语义收窄使用。Spring 还明确提醒,DAO 和 DDD repository 虽然常被放在一起讨论,但语义并不完全一样。更关键的是,Spring 的PersistenceExceptionTranslationPostProcessor会自动对带有@Repository的 bean 应用持久化异常翻译,把底层资源异常转成 Spring 的DataAccessException体系。(Home)回到 ABAP 这一侧,问题不能只问有没有同名注解,而要拆成几个更细