目录
约定优于配置
`SpringBoot` 中的约定优于配置
约定优于配置的起源
约定优于配置
约定优于配置:也称作按约定编程是一种软件设计范式。目的在于减少软件开发人员所需要做出决定的数量,从而获得简单的好处,而又不失其中的灵活性。开发人员仅仅需要规定应用中不符合约定的部分
约定优于配置,也有很多人解读为:约定大于配置,约定好于配置,习惯大于配置等。但它们都表明了一个意思,并不是说零配置。或者说零配置并不是完全没有配置,而是通过约定来减少配置
约定优于配置也就是说:系统,类库,框架应该提供有合理的默认值,而非要求提供不必要的配置。使用该框架提供的默认值,会让开发人员工作起来效率更快
SpringBoot 中的约定优于配置
在 SpringBoot 中,当我们导入一个 spring-boot-starter-web 后。就会自动的帮我们导入 SpringMVC 的相关依赖(包括 Json 支持的 Jackson 和数据校验的 Hibernate Validator)和一个内置的 Tomcat 容器,这使得在开发阶段可以直接通过 main 方法或是 JAR 包独立运行一个 WEB 项目
SpringBoot 约定,当你导入 spring-boot-starter-web 后,就约定了你是一个 web 开发环境。当你是一个 web 环境,就约定了你会使用 SpringMVC。至于其它的也约定你会需要,都给你默认导入进来。当你觉得不合适的时候,可以用更少的改动,满足你的需要
约定优于配置,在我们的实际生活中也有体现。比如,我们约定靠右行驶,我们约定从小右手拿筷子等。正是 SpringBoot 的小约定,大作用,才让越来越多的人爱上它
约定优于配置的起源
Spring 在推动 约定优于配置 这一设计理念,从 Spring 的注解版本就已经开始了。引入注解就是为了减少一些默认配置,引入注解也就代表着简化配置的开始,官方说基于 Spring 的基础就是这个事实
SpringBoot 约定以 starter 的形式减少依赖,于是相继推出了不少常用的 starter