본문 바로가기

분류 전체보기58

섹션 5-1 [DI와 테스트, 디자인 패턴] 테스트 코드를 이용한 테스트 테스트 코드를 이용한 테스트테스트 코드를 작성하여 하는 테스트는 여러 이름으로 불리우지만 개발자가 진행하는 테스트라는 의미로 해석하면 이해하는데 무리는 없을듯 합니다. 기존에 구성하였던 HelloApi를 JUnit을 기반으로 테스트 코드를 작성해보도록 하겠습니다.package com.tobyspring.tobyspringboot; import org.assertj.core.api.Assertions; import org.junit.jupiter.api.Test; import org.springframework.boot.test.web.client.TestRestTemplate; import org.springframework.http.HttpHeaders; import org.springfr.. 2024. 6. 11.
intelillJ, webStorm 윈도우 oh my posh 터미널 오류 메인 랩탑을 맥북에서 윈도우 씽크패드로 변경후 개발 환경을 구성하던 도중 윈도우 powerShell을 가독성 있게 꾸밀 수 있는 oh my posh이 powerShell로 실행할때는 문제가 없었지만 이상하게도 intelillJ, webStorm IDE 내부 터미널에서 실행할때만 oh my posh를 찾을 수 없다는 오류가 발생했었습니다..PowerShell 7.4.2oh-my-posh: C:\Users\THINKPAD-WINDOWS\Documents\PowerShell\Microsoft.PowerShell_profile.ps1:1Line | 1 | oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\easy-term.omp.js … | ~~~~~~.. 2024. 6. 9.
섹션 4-11 [독립 실행형 스프링 애플리케이션] SpringBootApplication SpringBootApplication.run을 직접 구현해보자MySpringApplication.classpackage com.tobyspring.tobyspringboot; import org.springframework.boot.web.server.WebServer; import org.springframework.boot.web.servlet.server.ServletWebServerFactory; import org.springframework.web.context.support.AnnotationConfigWebApplicationContext; import org.springframework.web.servlet.DispatcherServlet; public class MyS.. 2024. 6. 1.
섹션 4-10 [독립 실행형 스프링 애플리케이션] Bean 생명주기 메소드 Bean생명주기 메소드지금까지 우리는 비즈니스를 처리하기 위해 HelloController, HelloService를 Bean으로 등록하고 관리하였습니다 그러나 이외 추가적으로 오브젝트를 새로 생성하는 게 두가지 정도가 있습니다. TomcatServletWebServerFactory, DispatcherServlet 입니다. Standart Alone애플리케이션을 만들기 위해서 보이지 않는곳에서 일을 해주는 오브젝트를 만들어야 해서 직접 코드로 생성을 했는데 이러한 오브젝트들도 Spring Bean으로 등록하여 관리될 수 있도록 코드를 수정하려고 합니다. TobyspringbootApplication.classpackage com.tobyspring.tobyspringboot; import or.. 2024. 6. 1.
섹션 4-9 [독립 실행형 스프링 애플리케이션] @Conponent 스캔 @Component스캔지난 시간까지 사용했던 스프링 컨테이너에 빈을 등록하는 방법은 클래스 정보를 레지스터 빈 메소드에 넘겨주거나 아니면 팩토리 메소드를 만들어서 직접 빈 인스턴스를 생성하는 방법을 사용했습니다. 그러나 그것보다 좀 더 간결하게 빈을 등록할 수 있는 방법이 있습니다. 그 방법은 @Component, @ComponentScan 애노테이션을 사용하여 Spring Container에게 Bean구성정보를 전달하는 방식입니다.애노테이션 방식으로 Bean을 등록하면 좋은점은 새로운 Bean을 만들어서 추가할때 매번 구성정보를 다시 등록해줄 필요가 없고 간단하게 Component애노테이션을 사용하면 됩니다. 다만 이러한 편리성 이면에는 Bean으로 등록되는 클래스가 굉장히 많아지게 되면 내가 이 애플.. 2024. 6. 1.
섹션 4-8 [독립 실행형 스프링 애플리케이션] 자바코드 구성 정보 사용 자바 코드 구성 정보 사용Spring Container가 사용하는 구성정보를 우리가 만든 코드를 어떻게 오브젝트로 만들어서 Container내에 컴포넌트를 등록해 두고 Spring Container안에 들어있는 우리가  Bean이라고 불리는 오브젝트가 또 다른 오브젝트를 사용한다면 즉 이제 의존하고 있다면 이 관계를 어떻게 맺어줄 것인가 어느 시점에 그 오브젝트를 주입해 줄 것인가 이런 정보들을 Spring Container에다가 구성 정보로 제공을 해줘야합니다. 이러한 구성정보를 제공하는 방법이 여러가지가 있을 수 있지만 예전에는 외부 설정파일을 이용했었지만 요즘은 좀더 쉽고 간결한 여러가지 방법들이 나와있습니다. 그 중 독특한 방법은 Factory Method를 이용하는겁니다. Factory Meth.. 2024. 6. 1.