Авто генерировать Spring Rest-Controller - PullRequest
0 голосов
/ 30 октября 2018

В настоящее время у меня есть задача создать API REST для существующего сервисного уровня в Spring.

Это настройка:

@Entity
public class Example{
    @Id
    public Long id;
    ...
}

public interface ExampleRepository extends CrudRepository<Example, Long> {}

@Service
public class ExampleService{
    @Autowired
    private ExampleRepository repo;
    public List<Example> findAll(){
        //do some businesslogic
        return repo.findAll();
    }
}

@RestController
@RequestMapping("/exampleService/*")
public class ExampleController{
    @Autowired
    private ExampleService service;
    @GetMapping
    public List<Example>findAll(){
       return service.findAll();
    }
}

Контроллер является для меня всего лишь образцом, и я действительно хотел бы найти способ генерировать его автоматически, потому что мы говорим о большом количестве сервисов и еще большем количестве функций.

Я знаю, что есть способ представить репозитории как REST-Endpoint, используя spring-data-rest , но это не то, что я хочу. Я хочу, чтобы службы отображались как конечные точки REST. Не могли бы вы дать мне подсказку, как это сделать?

1 Ответ

0 голосов
/ 30 октября 2018

Вам следует написать Generic Rest Controller, который затем вызывает ваши внутренние службы. Этого можно добиться, используя файл внешних ресурсов для хранения сведений о классе и API отражения Java.

...