Spring Boot学习笔记(1)——构建SpringBoot项目

构建spingboot项目

1、构建 Spring Boot 项目,事实上建立的就是一个 Maven 项目
2、使用idea/eclipse工具构建一个maven项目
3、修改maven项目的pom文件:
1)、在 pom.xml 中添加 Spring Boot 相关的父级依赖, spring-boot-starter-parent 是一个特殊的starter:


	org.springframework.boot
	spring-boot-starter-parent
	2.0.6.RELEASE

注意:这里要使用的版本是:2.0.6.RELEASE,现在官网上的版本是2.1.4.RELEASE,如果使用官网上的版本,则在启动类中不能使用**@SpringBootApplication**注解
2)、在pom文件中添加Web 项目相关的依赖:


	
		org.springframework.boot
		spring-boot-starter-web
	

3)、这一点是可选的,如果需要将springboot项目打成jar包运行,则需要添加下面的插件:


	
		
			org.springframework.boot
			spring-boot-maven-plugin
		
	

4、构建springboot的启动类:

package com.dss.springboot;
@SpringBootApplication
public class HelloMainApplication {

	public static void main(String[] args) {
		SpringApplication.run(HelloMainApplication.class, args);
	}
}

5、构建一个Controller类

package com.dss.springboot.controller;
@Controller
public class HelloController {

	@RequestMapping(value="/hello", method=RequestMethod.GET)
	@ResponseBody
	public String hello() {
		return "hello world...";
	}
}

6、启动springboot项目:
1)、直接运行HelloMainApplication类中的main方法,即可启动springboot项目,启动之后,可在 控制台 看到启动日志:
Spring Boot学习笔记(1)——构建SpringBoot项目_第1张图片
可以看到项目启动的端口是8080,因为springboot启动是通过内置的tomcat启动的,此时在浏览器访问:localhost:8080/hello ,即可访问成功
2)、通过maven package指令打包项目,再运行java -jar xxxxx.jar 也可以启动spingboot项目

SpingBoot项目底层原理简单分析

1、pom文件分析:




	org.springframework.boot
	spring-boot-starter-parent
	2.0.6.RELEASE




	
		org.springframework.boot
		spring-boot-starter-web
	

2、启动类分析:

/**
 * @SpringBootApplication用于表示一个引导类,说明 当前是一个 springboot 项目
 * 		该注解主要由三个注解组成:
 * 			@SpringBootConfiguration (这个注解的组成如下:通过这个注解,表示将当前类添加到spring容器中,它是一个组件,并且它是sping的一个配置类)
 * 				 @Configuration 它属于spring底层的一个注解,用于定义配置类,等价于spring的xml配置文件
 * 					@Component 它用于将该注解表明的类添加到spring容器中,表示 是一个组件
 * 
 *			@EnableAutoConfiguration
 *				@AutoConfigurationPackage 将引导类所在包 及子包下面所有的组件添加 到spring 容器中
 *				@Import(AutoConfigurationImportSelector.class)
 *					1、将所有的组件 以 全类名 的方式放回,并且添加到 spring 容器中
 *					2、会向 spring 容器中导入非常多的 自动配置类 ,这些配置类都是spring 定义好的,省去我们手动编写 配置文件中的bean标签来注入组件
 *
 *			@ComponentScan
 *				被该注解标识的类会被 spring 容器进行管理
 * 
 * 		注意:spring项目在启动时,会以引导类所在的包为基准,将所有子包下面的组件扫描到spring容器中,所以,引导类要定义在package的最上层
 * @author asong
 *
 *
 */
@SpringBootApplication
public class HelloMainApplication {

	public static void main(String[] args) {
		SpringApplication.run(HelloMainApplication.class, args);
	}
}

你可能感兴趣的:(SpringBoot)