BackEnd/Spring & Springboot Study

    [토비의 스프링] 2.4 스프링 테스트 적용

    테스트를 위한 애플리케이션 컨텍스트 관리 설정파일 및 의존성 주입등을 활용한 테스트 클래스 작성법에 대해 다룹니다. 더보기 스프링 테스트 컨텍스트 프레임워크 적용 스프링 테스트 컨텍스트를 적용한 UserDaoTest @ExtendWith(SpringExtension.class) @ContextConfiguration(locations = "/applicationContext.xml") public class DBTest { @Autowired private ApplicationContext context; ... @BeforeAll public void setUp() { this.dao = this.context.getBean("userDao", UserDao.class); } @ExtendWith 단위..

    [토비의 스프링] 2.3 개발자를 위한 테스팅 프레임워크 JUnit

    JUnit이란? 자바와 JVM기반 언어(ex: kotlin) 의 단위 테스트 프레임워크 책과 다르게 SpringBoot, JUnit5, IntelliJ, Gradle을 사용하여 JUnit을 다뤄보겠습니다. JUnit 테스트 실행 방법 JUnit5를 활용해 테스트를 실행하는 방법에 대해 다룹니다. 더보기 간단한 연산을 하는 Caclulator 클래스 @Service public class Calculator { public int add (int a, int b) { return a + b; } } Caclulator클래스를 테스트 하기 위한 CacalculatorTest 클래스 @SpringBootTest class CaclulatorTests { @Autowired Calculator calculato..

    [토비의 스프링] 2.2 UserDaoTest 개선

    UserDaoTest를 개선해보자. 1. 테스트 검증의 자동화 모든 테스트는 성공과 실패의 두 가지 결과를 갖는다. 실패의 경우 에러가 발생한 경우와, 개발자의 의도와 다른 결과가 나온 경우가 있다. 전자를 테스트 에러, 후자를 테스트 실패라고 하자. 테스트 에러의 경우 콘솔에 에러 메시지와 긴 호출 스택 정보가 출력되어 파악하기 쉽다. 테스트 실패의 경우 별도의 확인 작업과 그 결과가 있어야만 알 수 있다. 테스트 실패를 쉽게 확인할 수 있게 코드를 변경해보자. 수정 전 테스트 코드 더보기 System.out.println(user2.getName()); System.out.println(user2.getPassword()); System.out.println(user2.getId() + "조회 성공"..

    [토비의 스프링] 2.1 UserDaoTest 다시 보기

    2장 테스트 개요 끊임없이 변화하고 복잡한 애플리케이션 이 변화에 대응하는 첫번째 전략인 객체지향적 설계와 그것을 효과적으로 담아낼 수 있는 IoC/DI등의 기술을 알아봤다. 두번째 전략인 테스트는 만들어진 코드를 확신할 수 있게 해주고, 변화에 유연하게 대처할 수 있는 자신감을 준다. 테스트란 무엇이며, 그 가치와 장점, 활용 전략, 스프링과의 관계를 살펴보자. 테스트에 활용할 대표적인 테스트 프레임워크와 이를 이용한 학습 전략도 알아보자. 1. 테스트의 유용성 테스트는 개발자가 작성한 코드가 예상과 의도대로 동작하는지 확인하는 작업이다. 이를 통해 코드를 확신할 수 있고, 이는 즉 코드의 결함을 제거할 수 있다. 2. UserDaoTest의 특징 UserDaoTest Code 더보기 public cl..

    [토비의 스프링] 1장 정리 [IoC와 DI]

    스프링과 그 기본 개념인 IoC와 DI에 대해 간단하게 다뤄보겠습니다. 1. 그래서 스프링 프레임 워크가 뭔데? 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크 엔터프라이즈급 애플리케이션을 개발하기 위한 모든 기능을 종합적으로 제공하는 경량화된 솔루션입니다. 엔터프라이즈급 개발이란 뜻대로만 풀이하면 기업을 대상으로 하는 개발이라는 말입니다. 즉, 대규모 데이터 처리와 트랜잭션이 동시에 여러 사용자로 부터 행해지는 매우 큰 규모의 환경을 엔터프라이즈 환경이라 일컫습니다. Spirng Framework는 경량 컨테이너로 자바 객체를 담고 직접 관리합니다. 객체의 생성 및 소멸 그리고 라이프 사이클을 관리하며 언제든 Spring 컨테이너로 부터 필요한 객체를 가져와 사용할 수 있습니다. 이는 Spirng이..

    [토비의 스프링] 1.8 XML을 이용한 설정

    스프링에선 다양한 방법으로 DI 의존관계 설정정보를 만들 수 있다. 그 중 하나인 XML을 이용한 설정에 대해서 알아보자. (xml을 이용한 설정은 최근에 많이 사용하지 않는 추세이다.) 1. XML 설정 xml설정에 대한 기본적인 내용에 대해 다룹니다. 더보기 ConnectionMaker() 전환 자바 코드 설정정보 XML 설정정보 빈 설정파일 @Configuration 빈의 이름 @Bean methodName() @Bean ---------------------------------> id="connectionMaker" return new DConnectionMaker(); ----> class="springbook...DConnectionMaker" /> } userDao() 전환 XML의 의존관..