【发布时间】:2018-04-28 12:07:24
【问题描述】:
我已经阅读了足够多关于什么是框架以及它与库有何不同的帖子......包括控制反转。
只有一个问题没有得到解答 框架是否仅适用于用户界面,框架会一直监听用户请求,然后在需要时调用程序员的自定义代码? 有人可以提供不用于 GUI 的任何其他类型框架的示例吗?像 java 或 C++ 代码总是以 Main() 开头并遵循程序员设置的路径..
【问题讨论】:
标签: java frameworks libraries
我已经阅读了足够多关于什么是框架以及它与库有何不同的帖子......包括控制反转。
只有一个问题没有得到解答 框架是否仅适用于用户界面,框架会一直监听用户请求,然后在需要时调用程序员的自定义代码? 有人可以提供不用于 GUI 的任何其他类型框架的示例吗?像 java 或 C++ 代码总是以 Main() 开头并遵循程序员设置的路径..
【问题讨论】:
标签: java frameworks libraries
Spring 框架就是这样一个例子。
另外,我认为您可能误解了控制反转。简单来说,这意味着不是程序员 控制发生的事情,而是框架。因此,虽然它确实以main 开头,但这并不一定意味着用户可以控制发生的事情
从程序员的角度来看,Spring 框架的工作方式实际上非常简单 - 您可以通过使用适当的注释来添加功能,例如@Controller、@Service/@Component、@Configuration 等,如果你想修改 Spring 的行为,你通常通过在返回你想要的类的类型的方法上声明 @Bean 来覆盖 bean覆盖。例如:
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
在此示例中,您无需执行任何其他操作,因为 Spring 框架将负责检测所有 @Bean 注释并进行相应调整。
这只是对 Spring Framework 工作原理的粗略解释,但它应该可以帮助您更好地理解。
【讨论】: