1、简介
(1)出现的背景
(2)优点
(3)微服务
单体应用:
微服务:
2、新建SpringBoot项目
(1)新建一个maven的web工程
(2)在maven的配置文件中导入springboot的依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> <type>pom</type> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>1.5.9.RELEASE</version> </dependency>
(3)编写主程序并启动SpringBoot应用:
//添加注解,标注一个主程序类,说明这是一个springboot应用 @SpringBootApplication(scanBasePackages = "pers") public class HelloWorld { public static void main(String[] args) { //启动spring应用 SpringApplication.run(HelloWorld.class,args); } }
(4)书写controller层代码
@Controller public class HelloController { @ResponseBody// @RequestMapping("/hello") public String hello(){ return "hello world"; } }
@ResponseBody:这个类的所有方法返回的数据直接写给浏览器,如果是对象转换为json类型的数据
(5)运行主程序
可以看出,在springboot的项目中,不需要配置视图解析器、前端控制器,甚至连tomcat都不需要配置
3、将springboot项目打成jar包
(1)导入依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>1.5.9.RELEASE</version> </dependency>
(2)运行生命周期函数
要确保maven的配置文件中的配置是生成jar包:
生成jar包成功:
(3)运行生成的jar包:在cmd中用java -jar命令运行
4、依赖
(1)父项目
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> <type>pom</type> </dependency>
来管理springboot应用里面的所有依赖,是springboot的版本仲裁中心,例如:导入它管理范围内的依赖是不需要写版本号的,因为里面蕴含所有的版本信息
(2)spring-boot-starter-web依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>1.5.9.RELEASE</version> </dependency>
spring-boot-starter:springboot的场景启动器,帮我们导入了web模块正常运行所依赖的组件。根据不同的功能,可以选择springboot的不同启动器。因为springboot将所有的功能都抽取了出来,做成一个个的启动器,只需要在项目里面引入这些启动器,相关场景的所有依赖都会导入进来
5、主程序类
(1)@SpringBootApplication注解
@SpringBootApplication(scanBasePackages = "pers") public class HelloWorld { public static void main(String[] args) { //启动spring应用 SpringApplication.run(HelloWorld.class,args); } }
@SpringBootApplication标注在某一个类上面后就说明这个类是springboot的主配置类,可以运行这个类的main方法来启动springboot应用
(2)查看SpringBootApplication源码:它是由一系类的注解组成的
@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} )} )
@SpringBootConfiguration:springboot的配置类,表示这是一个springboot的配置类
@EnableAutoConfiguration:开启自动配置功能。例如:包扫描等。在配置@SpringBootApplication注解的时候,默认情况是只扫描主类的包,因此在扫描其他包的时候需要添加参数
6、使用spring initializer快速创建Spring Boot项目
(1)新建项目
(2)输入相关参数
(3)选择需要的功能(这里只选择web功能)
(4)创建项目成功
能够正常访问:
(5)特点
主程序已经生成,只需要添加业务逻辑即可
目录结构:
springboot:springboot初识(相关概念、新建项目)
原文:https://www.cnblogs.com/zhai1997/p/13305197.html