복붙노트

[SPRING] 전역 변수와 응용 프로그램 변수 Spring 부트 프로젝트에서 정의하기

SPRING

전역 변수와 응용 프로그램 변수 Spring 부트 프로젝트에서 정의하기

나는 스프링과 스프링 부츠를 사용하여 마이크로 서비스를 개발하려고 노력 중이다. 내 프로젝트에서, 나는 단일 지향적 인 서비스 지향 아키텍처로 변환하고있다. 프로젝트에는 20 개의 마이크로 서비스가 있습니다.이 변수들은 애플리케이션 변수와 전역 변수를 설정해야합니다. 나는 이것과 관련된 혼란을 가지고있다. 그리고 나는 그 혼란을 여기에 더하고있다.

해결법

  1. ==============================

    1.My Exploration 이후 데이터베이스 구성을 포함하여 전역 변수 및 응용 프로그램 변수를로드 할 때이 문제점에 대한 솔루션을 찾습니다. 우리가 사용할 수있는 가장 좋은 방법은 - 스프링 클라우드 구성 서버 외부화 된 구성입니다.

    My Exploration 이후 데이터베이스 구성을 포함하여 전역 변수 및 응용 프로그램 변수를로드 할 때이 문제점에 대한 솔루션을 찾습니다. 우리가 사용할 수있는 가장 좋은 방법은 - 스프링 클라우드 구성 서버 외부화 된 구성입니다.

    스프링 클라우드 설정 서버를위한 마이크로 서비스를 만들 수 있습니다. 설정 서버에서는 두 가지 방법으로 변수와 설정을 생성 할 수 있습니다.

    참조 할 링크

    여기서 나는 로컬 파일 시스템을 사용했다.

    src / main / resources 아래에 Config 폴더를 생성해야합니다. 그리고 명명 규칙에 따라 다른 프로파일을 작성하십시오.

    db, properties, db-test.properties, db-prod.properties, db-dev.properties. 예를 들어 다른 개발 환경을 위해 만들었습니다. 변수 및 구성에 대한 프로필을 만들 수 있습니다.

    구성 서버의 application.properties에 다음을 추가하십시오.

    server.port=8888
    spring.profiles.active=native
    

    설정 서버의 pom.xml 파일에 설정 서버 의존성을 추가하고,

    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-config-server</artifactId>
    </dependency>
    

    메인 애플리케이션 실행 클래스에 다음을 추가하십시오.

    @SpringBootApplication
    @EnableConfigServer
    public class ConfigServerApplication {
    
        public static void main(String[] args) {
        SpringApplication.run(ConfigServerApplication.class, args);
        }
    }
    

    또한 pom.xml 의존성을 추가하여 클라이언트 마이크로 서비스 프로젝트를 생성하고,

    <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-config</artifactId>
    </dependency>
    

    서버에서 구성을 수신하도록 클라이언트를 설정하기 위해 application.properties 파일에 다음 행을 추가하십시오.

    server.port=8080
    spring.application.name=db
    spring.cloud.config.uri=localhost:8888
    

    마지막으로 프로파일을 지정하여 클라이언트 프로젝트를 실행하십시오.

    java -jar -Dsping.profiles.active=<profile> <jar_name>.jar
    

    미리 감사드립니다.

  2. from https://stackoverflow.com/questions/49490466/global-variables-and-application-variables-defining-in-spring-boot-project by cc-by-sa and MIT license