选择自己的maven D:/apache-maven-3.6.3
<parent>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-parentartifactId>
<version>2.1.13.RELEASEversion>
parent>
<dependencies>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-webartifactId>
dependency>
dependencies>
/**
* @SpringBootApplication 来标注一个主程序类,说明在是一个spring boot应用
*/
@SpringBootApplication
public class HelloWorldMainApplication {
public static void main(String[] args) {
//Spring应用启动起来
SpringApplication.run(HelloWorldMainApplication.class,args);
}
}
@Controller
public class HelloController {
@ResponseBody
@RequestMapping("/hello")
public String hello(){
return "Hello World!";
}
}
<build>
<plugins>
<plugin>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-maven-pluginartifactId>
plugin>
plugins>
build>
将这个应用打成jar包,直接使用java -jar的命令进行执行;
<parent>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-parentartifactId>
<version>2.1.13.RELEASEversion>
parent>
他的父项目是:
<parent>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-dependenciesartifactId>
<version>2.1.13.RELEASEversion>
<relativePath>../../spring-boot-dependenciesrelativePath>
parent>
他来真正管理Spring Boot应用里的所有依赖版本;
Spring Boot的版本仲裁中心
以后我们导入依赖默认是不需要写版本: spring-boot-dependencies
(没有在dependencies的依赖需要写版本)
<dependencies>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-webartifactId>
dependency>
dependencies>
spring-boot-starter-web
spring-boot-starter:springboot场景启动器:帮我们导入了web模块正常运行所依赖的组件.
Spring Boot 将所有的功能场景都抽取出来,做成一个个的Starters(启动器),只需要在项目里面引用这些starter相关场景的所有依赖都会导入进来,要用什么功能就导入什么场景的启动器
/**
* @SpringBootApplication 来标注一个主程序类,说明在是一个spring boot应用
*/
@SpringBootApplication
public class HelloWorldMainApplication {
public static void main(String[] args) {
//Spring应用启动起来
SpringApplication.run(HelloWorldMainApplication.class,args);
}
}
@SpringBootApplication: spring boot应用 标注在某个类上说明这个类是Spring Boot的主配置类,SpringBoot就应该运行这个类的main方法来启动SpringBoot应用
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(
excludeFilters = {@Filter(
type = FilterType.CUSTOM,
classes = {TypeExcludeFilter.class}
), @Filter(
type = FilterType.CUSTOM,
classes = {AutoConfigurationExcludeFilter.class}
)}
)
public @interface SpringBootApplication {
@SpringBootConfiguration :springBoot的配置类
标注在某个类上,表示这是一个springBoot的配置类:
@Configuration:配置类上来标注这个注解
配置类 ----- 配置文件;配置类也是容器中的一个组件:@Component
@EnableAutoConfiguration :开启自动配置功能.
下一篇学习
SpringBoot详解(二) 从入门到入土 (配置文件)