一、springboot是啥?
1.什么是springboot?
1.1springboot是spring生态圈的一个轻量级框架,换句话说springboot就是spring,是spring的一个衍生版本
1.2如果是spring框架,项目中搭建完毕,无法实现任何的代码,也就是说spring没有办法帮助开发人员去连接数据库,对数据库做增删改查,也没有办法自动把shiro集成进来,需要开发人员手动编写xml配置文件,自己进行整合
1.3springboot其实就是集成好了很多框架的spring,直接根据springboot所提供的标准化编写配置即可,不再需要编写xml配置文件,springboot官方给出的解释就是干掉xml文件,使用Java代码进行编写配置通过Java类来代替xml
二、为什么使用?
2.为什么要用springboot来代替spring?
傻瓜式开发,减少了大量配置,降低了开发人员的标准,低层次的开发人员也可以进行编写业务逻辑,不再需要了解内部运行原理以及框架的集成和整合
三、实际操作?
3.1 创建maven项目,在pro.xml文件中,将spring-boot-starter-parent 引入进来。
xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0modelVersion> <groupId>com.aaagroupId> <artifactId>20190815-springbootartifactId> <version>1.0-SNAPSHOTversion> <parent> <groupId>org.springframework.bootgroupId> <artifactId>spring-boot-starter-parentartifactId> <version>1.5.22.RELEASEversion> parent> <dependencies> <dependency> <groupId>org.springframework.bootgroupId> <artifactId>spring-boot-starter-webartifactId> dependency> dependencies> project>
3.2 创建入口类,在java源文件下,新建包,在包的根目录下,建立ApplicationRun.
package com.aaa.zxf.springboot; /* * 1.springboot 的入口方法 * * 2.架构基本成型。 * * 3.@SpringBootApplication 注解 * 自动加载springboot 所需要的配置 * 并将ApplicationRun 类,识别为整个项目的入口类。 *注意! * 这个类,必须要放在所有业务的上一层。 * 就是说,至少需要放在springboot包下 * * 4.最终springboot 是根据SpringApplication.run 来运行的 * */ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; //自动加载springboot 入口类 @SpringBootApplication public class ApplicationRun { public static void main(String[] args) { SpringApplication.run(ApplicationRun.class,args); } }
3.3 在包中,建立controller 包,建立后台控制器
package com.aaa.zxf.springboot.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /* * 1.RestController * 把整个 Controller, 都添加@ResponeBody 注解。 * 2.Controller * 直接返回页面,不能处理ajax请求,需要处理,还要ajax请求,还要添加 ResponseBody 注解 * */ @RestController public class TestController { @RequestMapping("/demo") public String test(){ return "检查springboot的效果。"; } }
3.4 运行项目,在浏览器中输入 localhost:8080/demo 测试是否取到了数据。
四、解析原理?
4.1 在自己的maven项目中,引入了 spring-boot-starter-parent,此时自己的工程就是Sringboot项目下的
一个子工程。
4.2 parent项目 引入了springbootdependcies ,是他的子项目。
4.3 在自己的项目中定义jar包的时候,就等同于是重写了,父类项目中的jar包,不需要版本号。