spring 约定优于配置 spring boot约定大于配置

目录

约定优于配置

`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

相关推荐
我是人✓9 分钟前
SQL主键与外键
java·数据库
圣光SG17 分钟前
Java操作题练习(二)
java·开发语言·python
蜡台22 分钟前
Android WebView 设计指南
android·java·kotlin
AI_paid_community37 分钟前
机械研发人员如何使用 Claude?
java·vue.js
MacroZheng40 分钟前
同事:“Claude Code都能自动写代码了,还要什么Spec Coding?” 我反问:“屎山代码你来维护?”
java·人工智能·后端
未秃头的程序猿1 小时前
JDK 26的Value Class,我做了个性能测试,结果出乎意料
java·后端·面试
Zane19941 小时前
volatile / synchronized / final:三大特性(原子性/可见性/有序性)到底谁保证了什么?
java·后端
巴勒个啦1 小时前
从需求到上线:记录一次完全由 AI 辅助完成的小产品全流程
java·前端
名字还没想好☜1 小时前
Spring @Async 不生效排查:自调用失效、默认线程池坑与异步方法里的异常去哪了
java·python·spring·异步
wechatbot8881 小时前
解决企业微信官方 API 短板:iPad 协议全功能对接方案
java·汇编·windows·http·微信·企业微信