SpringBootディレクトリ構造解析

SpringBootディレクトリ構造

私は、主に以下のディレクトリ構造を生成し、SpringBoot後の最初のショートは、作成方法を理解します

 

 

どこsrcディレクトリ

メイン---->

Javaの:メインプログラムのソースコード

リソース:プロファイルapplication.properties

 

 

テスト---->

Javaの:テストのソースコードの使用して、Java JUnitの

 

 

demo_springboot.iml:プロジェクトの記述情報

pom.xml:Mavenのリポジトリ依存関係の依存関係の設定

 

各プロファイルを導入

グローバル・コンフィギュレーション・ファイルを使用しSpringBoot、コンフィギュレーションファイル名が固定されています。

application.properties
若しくは
application.yml

 

役割:変更デフォルト値のSpringBoot自動設定、地上階にSpringBootは私たちに良好な分布を与えました

 

プロフィールローディング位置

springbootは、デフォルトの設定ファイルSpringBootとしてapplication.properties/ymlファイルを起動すると、次の場所がスキャンされます

-file:./設定/

-ファイル:。/

-calsspath:/ configに/

-classpath:/

最高、最低優先度、優先度の高い項目が低い優先順位の同じ同一の構成要素を覆うように配置されています

SpringBootは、すべての4つのポジションからメインの設定ファイルをロードし、補完的な構成

 

コンフィギュレーション・ファイルを使用する方法

applicaton.yml

人:
    LASTNAME:こんにちは
    age: 18
    boss: false
    birth: 2017/12/12
    maps: {k1: v1,k2: 12}
    lists:
      - lisi
      - zhaoliu

 

组件使用application.yml

/**
 * 将配置文件中配置的每一个属性的值,映射到这个组件中
 * @ConfigurationProperties:告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;
 *      prefix = "person":配置文件中哪个下面的所有属性进行一一映射
 *
 * 只有这个组件是容器中的组件,才能使用容器提供的@ConfigurationProperties功能;
 *
 */
@Component
@ConfigurationProperties(prefix = "person")
public class Person {


    private String lastName;
    private Integer age;
    private Boolean boss;
    private Date birth;


    private Map<String,Object> maps;
    private List<Object> lists;
    private Dog dog
 

<!--导入配置文件处理器,配置文件进行绑定就会有提示-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>

 

@Value获取值和@ConfigurationProperties获取值比较

配置文件yml还是properties他们都能获取到值;

如果说,我们只是在某个业务逻辑中需要获取一下配置文件中的某项值,使用@Value;

如果说,我们专门编写了一个javaBean来和配置文件进行映射,我们就直接使用@ConfigurationProperties;

==我们还可以通过spring.config.location来改变默认的配置文件位置==

项目打包好以后,我们可以使用命令行参数的形式,启动项目的时候来指定配置文件的新位置;指定配置文件和默认加载的这些配置文件共同起作用形成互补配置;

java -jar spring-boot-02-config-02-0.0.1-SNAPSHOT.jar --spring.config.location=G:/application.properties

 

Springboot自动配置技巧

  1. SpringBoot启动会加载大量的自动配置类
  2. 我们看我们需要的功能有没有SpringBoot默认写好的自动配置类;
  3. 我们再来看这个自动配置类中到底配置了哪些组件;(只要我们用的组件有,我们就不需要再配置了)
  4. 给容器中自动配置类添加组件的时候,会从properties类中获取某些属性。我们就可以在配置文件中指定这些属性的值

关于配置文件的详细理解

参考:https://www.cnblogs.com/shamo89/p/8178109.html

おすすめ

転載: www.cnblogs.com/renshujia/p/12375504.html
おすすめ