코드스테이츠 BE 35일차 - Spring Framework

coding infant·2022년 8월 10일

코드스테이츠BE

목록 보기
35/48

아키텍처 : 건축물의 청사진, 조감도. 대략적인 컨셉

시스템 아키텍처 : 하드웨어, 소프트웨어 포함한 시스템의 전체적인 구성

소프트 아키텍처 : Java 플랫폼 아키텍처

애플리케이션 아키텍처 : 계층형 (N-티어) 등 존재

  • API 계층 : 클라이언트의 요청 받아들이는 계층

  • 서비스 계층 : API의 요청을 도메인의 요구 사항에 맞게 처리하는 계층 (비지니스 계층)

(도메인 : 업무 영역)

  • 데이터 엑세스 계층 : 서비스 계층에서 처리된 데이터를 데이터베이스에 저장하기 위한 계층

[Spring Framework 모듈 구성]

모듈 : 여러가지 기능을 목적에 맞게 그룹화하여 묶어 놓은 것 (Java의 패키지-클래스묶음- 단위로 묶여있음). 라이브러리 형태로 제공(재사용 가능)

참고 사이트 https://docs.spring.io/spring-framework/docs/5.0.0.M5/spring-framework-reference/html/overview.html

[Spring Boot]

사용시 Spring 설정 간결해짐

[사용해야 하는 이유]

기반의 복잡한 설계 방식 지양

의존 라이브러리의 자동 관리 : starter 모듈 사용

애플리케이션 설정의 자동 구성

프로덕션급 애플리케이션의 손쉬운 빌드

내장된 WAS를 통한 손쉬운 배포

dependencies {     // 의존 라이브러리 자동 관리
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.springframework.boot:spring-boot-starter-jdbc'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    implementation 'com.h2database:h2'
}

애플리케이션 설정의 자동 구성

implementation 'org.springframework.boot:spring-boot-starter-web’   
// 웹 애플리케이션이라 추측. 서블릿컨테이너 (디폴트 : Tomcat) 설정을 자동으로 구성

implementation 'org.springframework.boot:spring-boot-starter-jdbc’
// 데이터베이스 연결이 필요하다고 추축. JDBC 설정을 자동으로 구성


@SpringBootApplication                  // 애너테이션을 Spring애플리케이션 코드에 추가해주면 자동 구성 설정 활성화
public class SampleApplication {
    public static void main(String[] args) {
        SpringApplication.run(SampleApplication.class, args);
    }
}

프로덕션급 애플리케이션의 손쉬운 빌드

WAR 파일 형태로 WAS(Web Application Server)에 올릴 필요 없음
build - bootJar 명령 더블클릭 - jar파일 생성 (즉시 실행 가능한 애플리케이션 실행 파일)
WAS : 구현된 코드를 빌드해서 나온 결과물을 실제 웹 애플리케이션으로 실행해주는 서버
내장된 WAS를 통한 손쉬운 배포 : 별도의 WAS 구축할 필요 없음.( jar 파일 이용해서 java -jar jar파일명.jar 명령어 추가해주면 웹 애플리케이션 실행 가능)

한줄 정리 : Spring 구성은 Spring에 맡기고 비지니스 로직에만 집중하자!!

0개의 댓글