Java 如何使用Spring代理构建通用CRUD控制器&;后处理器

Java 如何使用Spring代理构建通用CRUD控制器&;后处理器,java,spring,spring-mvc,spring-boot,proxy,Java,Spring,Spring Mvc,Spring Boot,Proxy,我计划使用接口代理和自定义注释处理为MVCCrudController和genericCrudService构建一个通用基础架构,因为我的项目中有多个端点具有相同的CRUD模式 底线是-定义CrudController和CrudServices的接口,并为我的接口和流程cutsom注释创建一个ProxyBean,我希望实现与spring数据存储库相同的模式,您只需要定义存储库接口, 例如: interface CrudController<T>{ //crud method...

我计划使用接口代理和自定义注释处理为MVC
CrudController
和generic
CrudService
构建一个通用基础架构,因为我的项目中有多个端点具有相同的CRUD模式

底线是-定义
CrudController
CrudServices
的接口,并为我的接口和流程cutsom注释创建一个
ProxyBean
,我希望实现与spring数据存储库相同的模式,您只需要定义存储库接口, 例如:

interface CrudController<T>{
  //crud method...
}

interface CrudService<T>{
  //crud method...
}

class GenericCrudControllerImpl<T>{
private CrudService<T> service;
//crud methods implementation and call service crud methods
}
接口CrudController{
//积垢法。。。
}
接口CrudService{
//积垢法。。。
}
类GenericCrudControllerImpl{
私人CrudService服务;
//crud方法实现和调用服务crud方法
}
此模式的用法如下所示:

@CrudRestController(service=PersonCrudService.class) //PersonCrudService implements CrudService 
class CrudPersonController implements CrudController<Person>{}
@CrudRestController(service=PersonCrudService.class)//PersonCrudService实现CrudService
类CrudPersonController实现CrudController{}
我知道我应该使用Spring的
FactoryBean
接口以及
BeanPostProcessor
,但问题是我不知道如何读取CrudController的泛型参数,例如Person,以便能够用泛型参数实例化我的泛型实现,例如Person


我需要帮助如何正确使用ProxyBean模式和BeanPostProcessor来实现上述实现,我在web上找不到任何有用的示例。

看看Spring Data REST@Bond JavaBond我正在寻找自己的实现。我不使用spring存储库(因为某些原因我不能使用)。但是我想实现同样的效果/实现在这种情况下,我的建议是查看spring数据的实现,并挑选您需要的特性。(虽然这就像是重新发明轮子)我明白你的意思,但问题是我的数据库不是标准数据库,我使用SaaS服务来实现持久性,所以它不是标准数据库,我不能使用任何默认的repostiriosMaybe Netflix Faign?