栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringBoot:相关系统要求、HelloWord、依赖管理、自动配置(粗浅)---- 2

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringBoot:相关系统要求、HelloWord、依赖管理、自动配置(粗浅)---- 2

      • 系统要求
      • HelloWorld
        • 创建Maven工程
        • pom 文件中引入依赖
        • 创建主程序
        • 编写逻辑业务
        • 测试
        • 简化配置
        • 简化配置
      • 自动配置讲解
        • 依赖管理
        • 无需关注版本号,自动版本仲裁
        • 可以修改默认版本号
      • 查看自动配置的组件
      • 自动配置分析

系统要求

ssdss不同版本之间的差异可以如下观看:

ssdss①、寻找相应的版本,比如目前最新版本是2.5.6,所以我们要看相应版本的要求。

ssdss②、点击 “ Getting Started ” 查看相关的系统要求
ssdss③、我们发现系统需要Maven需要3.5版本以上,并且jdk8以上兼容jdk17。
ssdssMaven的相关配置:(在maven所在文件下的config 下的settings.xml进行配置)


    
       nexus-aliyun
       central
       Nexus aliyun
       http://maven.aliyun.com/nexus/content/groups/public
     

 
 
        
             jdk-1.8
             
               true
               1.8
             
             
               1.8
               1.8
               1.8
             
        
 
HelloWorld

ssdss需求:浏览发送/hello请求,响应 Hello,World! 。

官方文档为:https://docs.spring.io/spring-boot/docs/current/reference/html/getting-started.html#getting-started.first-application

创建Maven工程 pom 文件中引入依赖
    
        org.springframework.boot
        spring-boot-starter-parent
        2.5.6
    

    
        
            org.springframework.boot
            spring-boot-starter-web
        
    
创建主程序

编写逻辑业务


测试

ssdss运行主程序,结果如下:

我们可以看到Tomcat已经在8080端口运行了在浏览器端访问: http://localhost:8080/hello

官方地址:https://docs.spring.io/spring-boot/docs/current/reference/html/getting-started.html#getting-started.first-application.pom

简化配置

简化配置
    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
                2.5.6
            
        
    

ssdss执行maven的package命令把项目打成jar包,直接在目标服务器执行即可。cmd执行打包好的程序:(如果是用 tomcat,则要专门打包成 war包)

java -jar boot-01-helloworld-1.0-SNAPSHOT.jar

ssdss【注】:有的时候cmd命令启动不了springboot项目,可能是因为在属性中开启了【快速编辑模式】,取消方法:右击cmd控制台的窗口上方标题区域打开【选项】取消勾选【快速编辑模式】

自动配置讲解 依赖管理

ssdss ● 父项目做依赖管理

      依赖管理
       org.springframework.boot
       spring-boot-starter-parent
       2.5.6
   
    上面的父项目
  
    org.springframework.boot
    spring-boot-dependencies
    2.5.6
  
  几乎声明了所有开发中常用的依赖的版本号==>自动版本仲裁机制

ssdss ●开发导入 starter 场景启动器

    
      org.springframework.boot
      spring-boot-starter
      2.5.6
      compile
    

ssdss1. 见到很多 spring-boot-starter-* : * 指的是某种场景。
ssdss2. 只要引入starter,这个场景的所有常规需要的依赖我们都自动引入。
ssdss3. SpringBoot所有支持的场景
ssdss4. 见到的 *-spring-boot-starter: 第三方为我们提供的简化开发的场景启动器。
ssdss5. 所有场景启动器最底层的依赖。
ssdss6. 也可以创建自己的 starter。

无需关注版本号,自动版本仲裁

ssdss1. 引入依赖默认都可以不写版本

ssdss2. 引入 非 版本仲裁的jar,要写版本号。

可以修改默认版本号

ssdss1. 查看spring-boot-dependencies里面规定当前依赖的版本 用的 key。

ssdss2. 在当前项目里面重写 key 的配置 - 就近优先原则

1、查看spring-boot-dependencies里面规定当前依赖的版本 用的 key。 
2、在当前项目里面重写 key 的配置 
 
	5.1.43 

查看自动配置的组件

ssdss在主程序类查看配置了哪些组件:

 
@SpringBootApplication 
public class MainApplication { 
	public static void main(String[] args) { 
		// 查看自动配置的组件 
		// 1.返回IoC容器 
		ConfigurableApplicationContext run = SpringApplication.run(MainApplication.class, args); 
		// 2.查看容器里面的组件 
		String[] names = run.getBeanDefinitionNames(); 
		for (String name:names ) { 
			System.out.println(name); 
		} 
	} 
}
自动配置分析

ssdss自动配好Tomcat: • 引入Tomcat依赖。• 配置Tomcat

 
   org.springframework.boot
   spring-boot-starter-tomcat
   2.5.6
 

ssdss自动配好SpringMVC

sdssdss• 引入SpringMVC全套组件

ssddsss• 自动配好SpringMVC常用组件(功能)

ssdss自动配好Web常见功能,如:字符编码问题 • SpringBoot帮我们配置好了所有web开发的常见场景

ssdss改变扫描路径: @SpringBootApplication(scanbasePackages=“com.atguigu”) 或者@ComponentScan 指定扫描路径

@SpringBootApplication = @SpringBootConfiguration ➕@EnableAutoConfiguration➕ @ComponentScan("com.atguigu.boot")

ssdss各种配置都有默认值

sdssdssssdss• 默认配置最终都是映射到MulyipartProperties

sdssdssssdss• 配置文件的值最终会绑定到每个类上,这个类会在容器中创建对象

ssdss按需加载所有自动配置

sdssdssssdss• 非常多的starter

sdssdssssdss• 引入那些场景,这个场景的自动配置才会开启

sdssdssssdss• SpringBoot所有的自动配置功能都在 spring-boot-autoconfigure 包里面

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/361627.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号