spring boot和maven的约定大于配置体现在哪些方面
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring boot和maven的约定大于配置体现在哪些方面相关的知识,希望对你有一定的参考价值。
参考技术A Spring Boot充分利用了JavaConfig的配置模式以及“约定优于配置”的理念,能够极大的简化基于Spring MVC的Web应用和REST服务开发Spring Boot基础
【一、简介】1、Spring Boot 是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。
2、该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。
3、Spring Boot是一个简化Spring开发的框架。用来监护spring应用开发,约定大于配置,去繁就简,just run 就能创建一个独立的,产品级的应用。
【二、特征】
(1)可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;
(2)内嵌Tomcat或Jetty等Servlet容器;
(3)提供自动配置的“starter”项目对象模型(POMS)以简化Maven配置;
(4)尽可能自动配置Spring容器;
(5)提供准备好的特性,如指标、健康检查和外部化配置;
(6)绝对没有代码生成,不需要XML配置。 [1] [2]
【三、策略】
开箱即用,Outofbox,是指在开发过程中,通过在MAVEN项目的pom文件中添加相关依赖包,然后使用对应注解来代替繁琐的XML配置文件以管理对象的生命周期。这个特点使得开发人员摆脱了复杂的配置工作以及依赖的管理工作,更加专注于业务逻辑。
约定优于配置,Convention over configuration,是一种由SpringBoot本身来配置目标结构,减少了大量的XML配置,并且可以将代码编译、测试和打包等工作自动化。
【四、本质】
4、Spring Boot就是一些库的集合,它能够被任意项目的构建系统所使用。
5、我们在使用Spring Boot时只需要配置相应的Spring Boot就可以用所有的Spring组件
6、简单的说,spring boot就是整合了很多优秀的框架,不用我们自己手动的去写一堆xml配置然后进行配置。
7、从本质上来说,Spring Boot就是Spring,它做了那些没有它你也会去做的Spring Bean配置。。
【五、单体应用于微服务】
8、单体应用是把所有的应用模块都写在一个应用中。
9、微服务是一种架构风格,用微服务可以将应用的模块单独部署,
各个小型服务之间通过http进行通信。
【六、配置Spring Boot依赖】
10、 <dependencies> 之间的部分就是依赖的部分 </dependencies>
<dependency>
<groupId>com.css</groupId>
<artifactId>test-interface</artifactId>
<version>1.0.0</version>
</dependency>
11、groupid和artifactId被统称为"坐标"
groupId 定义了项目属于哪个组
artifactId 定义了当前maven项目在组中唯一的ID
version 指定了myapp项目的当前版本
name声明了一个对于用户更为友好的项目名称,不是必须的,推荐为每个pom声明name,以方便信息交流。
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-dependencies-zookeeper</artifactId>
<version>${dubbo.version}</version>
<type>pom</type>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>
?12、exclusions在mavenB项目中引入mavenA项目依赖,通过依赖传递,会将mavenA中的jar包传递进来,如果B中不需要A中的某个jar包就可以使用此标签。
13、plugin 插件
【七、入口@ SpringBootApplication注解】
14、程序是从main函数进入,使用@ SpringBootApplication.run()加载主程序类
15、@ SpringBootApplication是一个复合注解,
包括@ ComponentScan,和@ SpringBootConfiguration,@EnableAutoConfiguration。
【八、Spring Boot的配置文件】
16、想要向JavaBean类中赋值,需要在javabean的类中添加相应的注解@ Component和@ ConfigurationProperties(prefix = "person")。@ Component将类添加进容器,@ ConfigurationProperties配置文件中的数据注入到类中
【下篇详述Spring Boot注解】
以上是关于spring boot和maven的约定大于配置体现在哪些方面的主要内容,如果未能解决你的问题,请参考以下文章