Java 如何使用Spring代理构建通用CRUD控制器&;后处理器
我计划使用接口代理和自定义注释处理为MVCJava 如何使用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...
CrudController
和genericCrudService
构建一个通用基础架构,因为我的项目中有多个端点具有相同的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?