1>实例Demo
1 正文
idea创建空项目springboot3.
1 File >> New>> Project… >> Empty Project
2 项目springboot3,右键新建Model,boot3-01-demo
org.springframework.boot
spring-boot-starter-parent
3.0.5
org.springframework.服务器托管网boot
spring-boot-starter-web
3 创建HelloController
package com.lianying.boot.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController //相当于@Controller+@ResponseBody
public class HelloController {
@GetMapping("/hello")
public String hello(){
return "Hello,SpringBoot3";
}
}
4 创建com.lianying.boot.MainApplicaotion启动类
package com.lianying.boot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MainApplication {
public static void main(String[] args){
SpringApplication.run(MainApplication.class,args);
}
}
运行main方法后,浏览去输入localhost:8080/hello。页面返回Hello,SpringBoot3
5 打包Jar。pom.xml添加
org.springframework.boot
spring-boot-maven-plugin
在maven窗口执行。或者执行 mvn clean package
打包后的文件在target目录。
执行jar 。java -jarboot3-01-demo
2 本章总结
1 简化整合
导入相关的场景,拥有相关的功能。场景启动器
默认支持所有的场景https://docs.spring.io/spring-boot/docs/current/reference/html/using.html#using.build-systems.starters
官方提供的场景 命名 spring-boot-starter-*
第三方提供的场景 命名 *-spring-boot-starter
2 简化开发
无需编写配置,直接开发业务
3 简化配置
application 集中式管理配置。配置基本都有默认值
4 简化部署
打包为可执行jar.
5 简化运维
使用外部applicatin文件
2>SpringBoot依赖管理机制
1 为什么导入starter-web所有相关依赖都导入进来?
- 开发什么场景导入什么场景启动器
- maven依赖床底顺序,A-B-C 。A就拥有B和C
- 导入 场景启动器,启动器就把这个场景的所有核心以来全部导入进来
2 为什么不用写版本号
- 每个boot项目都有一个父项目,spring-boot-starter-parent
- parent的父项目是spring-boot-dependencies
- 父项目版本仲裁中心,把所有常见的的jar依赖版本都声明好了
3 自定义版本
利用maven的就近原则。直接在当前的pom中生命版本号
3>自动配置机制
1 自动配置的Tomcat、SpringMVC等
- 以前DispatcherServlet ViewResolver…
- 现在自动配置好这些组件
- 验证
@SpringBootApplication
public class MainApplication {
public static void main(String[] args){
var d=SpringApplication.run(MainApplication.class,args)服务器托管网;
String i[]=d.getBeanDefinitionNames();
for(String n:i){
System.out.println(n);
}
}
}
2 默认扫描规则:只会扫描主程序所在包以及子包
3 自定义扫描路径
@SpringBootApplication(scanBasePackages=””)
@ComponentScan()
4 配置默认值
配置文件的所有配置项是和某个类的对象值进行一一绑定的。
5 按需加载自动配置
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
相关推荐: Generative AI 新世界:过去、现在和未来
人类善于分析事物。但是现在看来,机器很有可能做得更好。机器可以不知疲倦夜以继日地分析数据,不断从中找到很多人类场景用例的模式:信用卡欺诈预警、垃圾邮件检测,股票价格预测、以及个性化地推荐商品和视频等等。他们在这些任务上变得越来越聪明了。这被称为 “分析人工智能…