麻绳先生

做一些记录性的工作

spring boot入门

spring简介

简化spring开发流程,J2EE开发的一站式解决方案。

优点

  • 快速创建独立运行spring项目以及与主流框架集成
  • 使用嵌入式servlet容器,应用无需达成war包
  • starters自动依赖与版本控制
  • 大量的自动配置,简化开发,也可以修改默认值
  • 无需配置XML,无代码生成
  • 准生产环境的运行时应用监控
  • 与云计算天然集成

微服务

是一种架构风格,其认为一个应用应该是一组小型服务,可以用过HTTP的方式通信。

每一个功能元素最终都是一个可独立替换和独立升级的软件单元。

环境配置

spring-boot-starter

启动器,spring-boot官方提供了一系列启动器。将所有的功能场景抽取出来,只要在项目里面引入这些starter,相关依赖就会自动导入。

主程序类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/**
* @SpringBootApplication标注这是spring boot应用
*/
@SpringBootApplication
public class HelloWorldMainApplication {

public static void main(String[] args){
//spring应用启动
SpringApplication.run(HelloWorldMainApplication.class, args);
}
}

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@SpringBootConfiguration//表示这是一个Spring Boot的配置类
@EnableAutoConfiguration//开启自动配置功能
@ComponentScan(
excludeFilters = {@Filter(
type = FilterType.CUSTOM,
classes = {TypeExcludeFilter.class}
), @Filter(
type = FilterType.CUSTOM,
classes = {AutoConfigurationExcludeFilter.class}
)}
)
public @interface SpringBootApplication

@SpringBootConfiguration:表示这是一个Spring Boot的配置类;
@Configuration:配置类上,表示配置类也是容器中的一个组件@Component

1
2
@AutoConfigurationPackage//自动配置包
@Import(EnableAutoConfigurationImportSelector.class)

spring-boot的注释没事可以看看。