Spring Framework является одним из таких примеров.
Кроме того, я думаю, что вы могли неправильно понять инверсию управления. Проще говоря, это означает, что вместо того, чтобы программист контролировал происходящее, это framework . Так что, хотя это действительно начинается с main
, это не обязательно означает, что пользователь контролирует то, что происходит
Способ работы Spring Framework на самом деле очень прост с точки зрения программиста - вы можете добавлять функции, используя соответствующие аннотации, например, @Controller
, @Service
/ @Component
, @Configuration
и т. Д., И если вы хотите изменить поведение Spring, вы обычно переопределяете bean-компоненты, объявляя @Bean
в методе, который возвращает тип нужного вам класса переопределить. e.g.:
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
В этом примере вам не нужно будет ничего делать, потому что Spring Framework позаботится об обнаружении всех @Bean
аннотаций и отрегулирует себя соответствующим образом.
Это только грубое объяснение того, как работает Spring Framework, но оно должно помочь вам немного лучше понять.