SpringBoot: 1. SpringBoot 여행 시작

스프링 부츠 가 뭐야?
Spring Boot 는 Spring 팀 디자인 이 Spring 응용의 구축 과 개발 과정 을 간소화 하 는 구조 이다.이 프레임 워 크 는 제3자 라 이브 러 리 에 대해 간단 한 기본 설정 을 했 습 니 다. Spring Boot 를 통 해 구 축 된 응용 프로그램 은 아주 적은 Spring 설정 만 있 으 면 빠르게 실 행 될 수 있 습 니 다.
Spring Boot 사용 시 좋 은 점
간단 하 다
일반 Spring Web 프로젝트 를 구축 하 는 일반적인 절차:
  • 웹 xml 설정, Spring 과 SpringMvc 통합
  • Spring 과 Mybatis 를 통합 하여 Spring 사무 설정
  • 로그 파일 설정
  • Tomcat 디 버 깅 배치
  • .......
    일련의 설정 과정 이 복잡 하고 빠 뜨리 기 쉽다. 어떤 페이지 의 메 일 을 쉽게 만들어 데이터베이스 에 저장 하 는 작은 프로젝트 를 만 들 더 라 도 처음부터 끝까지 설정 절 차 를 한 번 걸 어야 한다.
    Spring Boot 를 사용 하면 설정 이 많이 간소화 되 고 응답 하 는 maven 의존 도 를 도입 하여 간단 한 몇 가지 설정 을 하면 웹 프로젝트 를 신속하게 구축 할 수 있 습 니 다.
    Spring Boot 여행 오픈
    온라인 구축
  • 방문http://start.spring.io
  • Maven Project, Java, Spring Boot 2.1.9 구축 을 선택 하고 Generate 를 누 르 면 해당 하 는 파일 을 생 성 합 니 다.프로젝트 정보 단순 설정.

  • 비고:
    Dependencies 에 서 는 해당 하 는 의존 도 를 추가 하여 프로젝트 파일 을 만 들 때 자동 으로 추가 할 수 있 습 니 다. 예 를 들 어 웹 개발 을 하려 면 의존 에 웹 을 추가 하면 됩 니 다.
  • MyEclipse, Import - > Existing Maven Projects - > Next - > 압축 해 제 된 폴 더 선택 - > Finsh!

  • Myeclipse 를 통한 프로젝트 구축
  • File - > New - > Spring Starter 프로젝트 새 프로젝트
  • 설정 항목 에 대한 기본 정보
  • 선택 의존, 예 를 들 어 Spring Web
  • Finish OK, Spring Boot 프로젝트 구축 완료.

  • Tips:
    가 져 오 거나 Myeclipse 구축 프로젝트 에 pom. xml 파일 첫 줄 에 오류 가 발생 할 수 있 습 니 다: Unknown pom. xml / demo line 1 Maven Configuration Problem.
    해결 방안:
    pom 파일 의 노드 에 3.0.0 을 추가 하고 항목 을 오른쪽 클릭 하여 Maven > Update Project... 메뉴 를 클릭 하면 됩 니 다.
    프로젝트 구조 분석
    Spring Boot 의 기본 구 조 는 모두 세 개의 파일 입 니 다.
  • src/main/java 프로그램 개발 및 메 인 프로그램 입구: Application
  • src/main/resources 프로필 저장 위치: application. properties
  • src/test/java 테스트 입구: ApplicationTests
  • 애플 리 케 이 션 오른쪽 버튼 run 에서 Spring Boot 프로젝트 시작
  • 생 성 된 ApplicationApplicationTests 클래스 는 현재 생 성 된 프로젝트 를 직접 실행 할 수 있 습 니 다. 현재 이 프로젝트 는 데이터 접근 이나 웹 모듈 에 맞지 않 기 때문에 프로그램 은 Spring 을 불 러 온 후에 실 행 됩 니 다.
    웹 개발
    기본 Tomcat 시작 항목
    spring - boot - starter - parent 는 현재 항목 을 Spring Boot 프로젝트 로 지정 하여 많은 기본 Maven 의존 을 제공 합 니 다.
    Spring Boot 는 상 자 를 열 때 사용 하 는 의존 모듈 을 많이 제공 합 니 다. 이 모듈 들 은 모두 spring - boot - starter - XX 로 명명 되 었 습 니 다.예 를 들 어 Spring Boot 의 웹 기능 을 시작 하려 면 pom. xml 에 spring - boot - starter - web 를 설정 하면 됩 니 다.
  • pom. xml 에 웹 을 지원 하 는 모듈 추가
  • 
        org.springframework.boot
        spring-boot-starter-web
    

    spring - boot - starter - parent 에 의존 하기 때문에 version 을 설정 하지 않 아 도 됩 니 다.
    pom. xml 파일 에는 기본적으로 두 개의 모듈 이 있 습 니 다.
  • spring-boot-starter: 핵심 모듈 은 자동 설정 지원, 로그 와 YAML 을 포함 합 니 다. spring-boot-starter-web 웹 모듈 이 도입 되면 이 설정 을 제거 할 수 있 습 니 다. spring-boot-starter-web 자동 으로 의존 하기 때 문 입 니 다 spring-boot-starter.
  • spring-boot-starter-test: 테스트 모듈 은 JUnit, Hamcrest, Mockito 를 포함한다.
  • 컨트롤 러 층 작성
  • package com.w3cjava.controller;
    
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class HelloWorldController {
        @RequestMapping("/hello")
        public String index() {
            return "Hello World";
        }
    }
    @RestController Spring 의 @ Controller 와 @ Response Body 조합 에서 사용 하 는 것 으로 json 형식 으로 직접 출력 합 니 다.
  • 메 인 프로그램 을 시작 하고 브 라 우 저 접근 을 엽 니 다.http://localhost:8080/hello 결 과 는 다음 과 같 습 니 다. 웹 프로젝트 를 즐겁게 개발 할 수 있 습 니 다.

  • Jetty 시작 항목 설정
  • pom. xml 파일 에서 spring - boot - starter - web 를 찾 아 의존 에서 tomcat 의존 을 제거 합 니 다
  • 
    
        org.springframework.boot
        spring-boot-starter-web
        
        
            
                org.springframework.boot
                spring-boot-starter-tomcat
            
        
    
  • jetty 의존 추가
  • 
    
        org.springframework.boot
        spring-boot-starter-jetty
    
  • 프로젝트 메 인 프로그램 을 시작 하면 tomcat 가 Jetty 로 바 뀌 었 음 을 알 수 있 습 니 다.
  • 방문http://localhost:8080/hello 페이지 결과 가 정상 으로 나 타 났 습 니 다.

  • 유닛 테스트
    시 뮬 레이 션http://localhost:8080/hello 송신 요청 테스트
    package com.w3cjava;
    
    import static org.hamcrest.CoreMatchers.equalTo;
    import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
    import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
    
    import org.junit.Before;
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.http.MediaType;
    import org.springframework.test.context.junit4.SpringRunner;
    import org.springframework.test.web.servlet.MockMvc;
    import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
    import org.springframework.test.web.servlet.setup.MockMvcBuilders;
    
    import com.w3cjava.controller.HelloWorldController;
    
    @RunWith(SpringRunner.class)
    @SpringBootTest
    public class ApplicationTests {
    
        private MockMvc mvc;
    
        @Before
        public void setUp() throws Exception {
            mvc = MockMvcBuilders.standaloneSetup(new HelloWorldController()).build();
        }
    
        @Test
        public void getHello() throws Exception {
         mvc.perform(MockMvcRequestBuilders.get("/hello").accept(MediaType.APPLICATION_JSON))
                    .andExpect(status().isOk())
                    .andExpect(content().string(equalTo("Hello World")));
        }
    }
    

    열 배치
  • spring - boot - devtools 의존 추가
  • 
    
        org.springframework.boot
        spring-boot-devtools
        true
    
  • 메 인 프로그램 시작
  • Hello World Controller 에 새로운 맵 방법 추가
  • @RequestMapping("/hello1")
    public String index1() {
        return "Hello World1";
    }    
  • 직접 방문http://localhost:8080/hello1 정상
  • spring - boot - maven - plugin 플러그 인
    spring - boot - maven - plugin: Maven 방식 으로 애플 리 케 이 션 에 Spring Boot 지원 을 제공 할 수 있 습 니 다. 즉, Spring Boot 애플 리 케 이 션 에 Maven 작업 을 수행 할 수 있 는 가능성 을 제공 합 니 다.
    Spring Boot Maven plugin 의 5 가지 Goals
  • spring - boot: repackage, 기본 goal.mvn package 이후 실행 가능 한 jar / war 를 다시 포장 하고 mvn package 에서 생 성 된 jar / war 를. origin
  • 으로 유지 합 니 다.
  • spring - boot: run, Spring Boot 응용 프로그램 실행
  • spring - boot: start, mvn integration - test 단계 에서 Spring Boot 응용 수명 주기 관리
  • spring - boot: stop, mvn integration - test 단계 에서 Spring Boot 응용 수명 주기 관리
  • spring - boot: build - info, Actuator 가 사용 하 는 구축 정보 파일 build - info. properties
  • 생 성
    작은 매듭
    전체적으로 Spring Boot 를 통 해 프로젝트 를 신속하게 구축 할 수 있 습 니 다. 특정한 기능 을 사용 하려 면 해당 하 는 의존 및 간단 한 설정 항목 을 추가 하면 됩 니 다.
    원본 코드: 01. Spring - Boot - Demo
    스 캔 을 환영 합 니 다. 다음 QR 코드 는 '코사인 의 자류지' 대중 마이크로 신호 만물 에 관심 을 가지 고 있 습 니 다.

    좋은 웹페이지 즐겨찾기