我正在开发一项功能,允许Spring启动应用程序拥有“插件”。这意味着如果没有新的构建,应用程序应该能够集成新的代码片段。
动态类加载是可以的,但是,对于每个新的'插件',我需要添加一个新的休止端点。我知道有些库能够在spring boot应用程序中添加新的端点(比如netflix zuul和spring-fox),所以我认为这是可能的。
我认为一种方法是覆盖spring的'map resolver'并解析'extra'映射而不使用注释。我看了一下,似乎班RequestMappingHandlerMapping
负责解决弹簧映射,但是,我不知道应该覆盖那里。
当然我可以在控制器中使用通配符来做到这一点,但是,我正试图找到一种更优雅的方法。
如何动态添加新端点的任何示例?