Web/Spring-boot

    Spring] IoC (1)

    Inversion of Control 일반적인 (의존성에 대한) 제어권 : "내가 사용할 의존성은 내가 만든다." class OwnerController{ ​ private OwnerRepository repository = new OwnerRepository(); } IoC : "내가 사용할 의존성을 누군가 알아서 주겠지." 내가 사용할 의존성의 타입(또는 인터페이스)민 맞으면 어떤거든 상관없다. 그래야 내 코드 테스트 하기도 편하지. class OwnerController{ ​ private OwnerRepository repo; ​ public OwnerController(OwnerRepository repo){ ​ this.repo = repo; ​ } //repo를 사용합니다. } class O..

    Spring Web Layer(스프링 웹 계층)

    Spring Web Layer(스프링 웹 계층) Web Layer 흔히 사용하는 컨트롤러(@Controller)와 JSP /Freemaker 등의 뷰 템플릿 영역. 이외에도 필터(@Filter), 인터셉터, 컨트롤러 어드바이스(@ControllerAdvice) 등 외부 요청과 응답에 대한 전반적인 영역을 이야기함. Service Layer @Service에 사용되는 서비스 영역. 일반적으로 Controller와 Dao의 중간 영역에서 사용됨. @Transaction이 사용되어야 하는 영역. Repository Layer Database와 같이 데이터 저장소에 접근하는 영역. Dao(Data Access Object) 영역으로 이해하면 쉬울 것. Dtos Dto(Data Transfer Object)는 계..

    Spring-boot에서 build.grade 속성

    Spring boot에서의 build.grade 속성 build.gradle에 있는 내용을 그저 따라서 타이핑한 경험은 많지만, 어떤 의미인지 고민해보고 찾아본 경험은 없었다. 책을 사서 따라해보는 과정중에, 간단한 설명이 일부 있어서 코드와 함께 주석으로 정리해본다. 12345678910111213141516171819202122232425262728293031323334353637383940414243buildscript { // ext라는 키워드는 build.gradle에서 사용하는 전역변수를 설정하겠다는 의미. 여기서는 springBootVersion 전역변수를 생성하고 그 값을 '2.1.7.RELEASE'로 하겠다는 의미. // 즉, spring-boot-gradle-plugin라는 스프링 부트..

    IntelliJ에서 gradle(버전) distributionURL 변경하기

    IntelliJ에서 gradle distributionURL 변경하기 Test를 위한 code를 작성했는데, 원인 모를 상황에 부딪혔다. 매우 간단한 코드라 gradle.build에서도 오류를 찾지 못하고, code 오타도 없었다. 문제는 gradle버전. 새로 받은 버전은 ver5로 되어있어서, ver4로 낮춰주어야 한다더라. Project -> gradle -> wrapper -> gradle-wrapper.properties 여기서 distributionURL이 gardle 5... 로 되어있다면 버전을 낮춰서 시도하는 것도 하나의 방법일 것이라 생각한다. 윈도우 기준으로 alt + F12를 눌러서 gradlew wrapper --gradle-version 4.10.2를 입력해주면 된다. 끗-