My Spring Boot Application features a content management system. I would like to be able to dynamically load new components without requiring an application restart. An example component may be loading a new video player component or ad component. Each component would likely contain its own controllers and views.
What would the recommended pattern be for this, and what is a good framework to help handle this? Is OSGi an option?