将服务接口公开给多个实体或存储库

时间:2012-06-19 13:38:45

标签: spring-roo

我运行了下面的ROO命令,将一个服务接口公开给一个实体类,一对一映射。

service --entity ~.model.Course --interface ~.service.CourseService

问题: 我想将一个服务接口暴露给多个实体(或jpa) 例如,课程服务暴露给实体model.Course和model.Student

  1. 多个实体的ROO命令应该是什么样的?

  2. 此外,我可以运行什么ROO命令将上述服务公开给存储库类(jpa)而不是enity类?

1 个答案:

答案 0 :(得分:1)

据我所知,这不可能通过命令行,但是后续方法可行。

考虑你想用〜.model.Course和〜.model.Student创建一个服务

  1. 使用命令行创建与单个域实体关联的服务。

    service --entity ~.model.Course --interface ~.service.CourseService

  2. 打开CourseService界面并在@RooService注释中添加Student.class。代码应该是

    @RooService(domainTypes = { Course.class, Student.class })
    
    public interface CourseService {
    
      ..........
    
      ..........
    
    }
    
  3. Spring roo会自动将与Student类相关的必需方法添加到CourseService本身。