Fork me on GitHub

SpringBoot-03-yaml配置注入

SpringBoot-03-yaml配置注入

1. yaml语法学习

1.1 配置文件

SpringBoot使用一个全局的配置文件 , 配置文件名称是固定的

  • application.properties
    • 语法结构: key = value
  • application.yml
    • 语法结构:key: 空格 value

配置文件的作用 :修改SpringBoot自动配置的默认值,因为SpringBoot在底层都给我们自动配置好了:

  • 比如我们可以在配置文件中修改Tomcat 默认启动的端口号!测试一下!
1
server.port=8081
阅读更多...

SpringBoot-02-运行原理初探

SpringBoot-02-运行原理初探

  • 我们之前写的HelloSpringBoot,到底是怎么运行的呢,Maven项目,我们一般从pom.xml文件探究起;

1. pom.xml

  • 父依赖

其中它主要是依赖一个父项目,主要是管理项目的资源过滤及插件

1
2
3
4
5
6
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>

点进去,发现还有一个父依赖

1
2
3
4
5
6
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.2.5.RELEASE</version>
<relativePath>../../spring-boot-dependencies</relativePath>
</parent>
  • 这里才是真正管理SpringBoot应用里面所有依赖版本的地方,SpringBoot的版本控制中心;

  • 以后我们导入依赖默认是不需要写版本;但是如果导入的包没有在依赖中管理着就需要手动配置版本了;

  • 启动器 spring-boot-starter

1
2
3
4
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

springboot-boot-starter-xxx:就是spring-boot的场景启动器

spring-boot-starter-web:帮我们导入了web模块正常运行所依赖的组件;SpringBoot将所有的功能场景都抽取出来,做成了一个个的启动器(starter),只要在项目中引用这些starter即可,所有相关的依赖都会导入进来,我们需要什么功能就导入什么场景启动器即可,未来也可以自己自定义starter;

阅读更多...

SpringBoot-01-HelloWorld

SpringBoot-01-HelloWorld

1. SpringBoot简介

1.1 回顾什么是Spring

  • Spring是一个开源框架,2003 年兴起的一个轻量级的Java 开发框架,作者:Rod Johnson

  • Spring是为了解决企业级应用开发的复杂性而创建的,简化开发

1.2 Spring 是如何简化Java开发的

为了降低Java开发的复杂性,Spring采用了以下四种关键策略:

  1. 基于pojo的轻量级和最小侵入性编程,所有东西都是Bean.
  2. 通过IOC,依赖注入(DI)和面向接口实现松耦合;
  3. 基于切面(AOP)和管理进行声明式编程;
  4. 通过切合和模板减少样式代码,RedisTemplate,xxxTemplate;
阅读更多...

Leetcode-876

Leecode-876 Middle of the Linked List

思路:快慢指针

题目描述

1
2
3
Input: [1,2,3,4,5,6]
Output: 4
Since the list has two middle nodes with values 3 and 4, we return the second one.
1
2
3
4
5
Input: [1,2,3,4,5]
Output: 3 (Serialization: [3,4,5])
The returned node has value 3. (The judge's serialization of this node is [3,4,5]).
Note that we returned a ListNode object ans, such that:
ans.val = 3, ans.next.val = 4, ans.next.next.val = 5, and ans.next.next.next = NULL.
阅读更多...

Leetcode-365

Leecode-365 Water and Jug Problem

思路:DFS/裴蜀定理

题目描述

有两个容量分别为 x升 和 y升 的水壶以及无限多的水。判断能否通过使用这两个水壶,从而可以得到恰好 z升 的水?

只允许以下操作:

  • 装满任意一个水壶
  • 清空任意一个水壶
  • 从一个水壶向另外一个水壶倒水,直至倒满或者倒空

Solution:

  • DFS
  • BFS
  • 裴蜀定理
阅读更多...
  • © 2019-2022 Zhuuu
  • PV: UV:

请我喝杯咖啡吧~

支付宝
微信