У меня есть приложение Springboot для динамической загрузки различных классов на основе пользовательского ввода.
Может кто-нибудь предложить лучший и оптимизированный способ сделать это.
Ниже мой подход: -
//I have a map of actions available with their respective classes(which is also a springboot app)
private static Map<String,Class> actions = ImmutableMap.<String,Class>builder()
.put("A",A.class),
.put("B",B.class);
//main method of springboot root app
public static void main(String args[]){
new MainApplication().run(args);
}
//get the action class and run that application
public void run(String args){
Class action = getAction();
SpringApplication app = new SpringApplicationBuilder(job).build();
app.run(args);
}
//action.name is passed as an argument while starting the application( for.ex action.name="A")
private Class getAction(){
String action = System.getProperty("action.name");
Class classType = actionMap.get(action);
return classType;
}
Теперь я хочу загрузить эти приложения действий только с аннотацией. Может кто-нибудь предложить какой-либо способ сделать то же самое.