전체 글169 07 테스트 코드 작성하기(1) 단위 테스트와 통합 테스트 단위 테스트. 일반적으로 메서드 단위로 수행하는 작은 단위의 테스트 통합 테스트: 호환성 등을 포함해 어플이 정상적으로 동작하는지 통합적으로 확인하는 테스트 테스트 코드를 작성하는 방법 Given-When-Then 패턴 Given: 테스트에 필요한 환경 설정 When: 테스트의 목적을 보여줌 Then: 테스트의 결과를 검증 이 패턴은 간단한 테스트로 여겨지는 단위 테스트에서는 잘 사용하지 않는다. 하지만 이걸로 테스트 코드를 작성하면 명세 문서의 역할을 수행한다는 점에서 도움이 된다. 좋은 테스트를 작성하는 5가지 속성 빠르게: 느리면 개발 속도도 느려짐 고립된: 하나의 테스트는 목적으로 여겨지는 하나의 대상에 대해서만 수행돼야 한다. 반복 가능한: 어떤 환경에서도, 개발 환경.. 2023. 11. 12. 06 데이터베이스 연동(3) 서비스 클래스 만들기 먼저 dto를 만들고 서비스 클래스들을 만들자. entity와 dto 둘 다 객체인데.. 클라와 가까운 레이어에서는 dto를 사용하고 db와 가까운 레이어에서는 entity를 사용하는 것이 일반적이다. 단 회사 내 규정에 따라 얼마든지 바뀔 수 있는 사항 인 것 같다. 어쨌든 서비스 클래스를 만든다. public interface ProductService { ProductResponseDto getProduct(Long number); ProductResponseDto saveProduct(ProductDto productDto); ProductResponseDto changeProductName(Long number, String name) throws Exception; voi.. 2023. 10. 28. 06 데이터베이스 연동(2) 데이터베이스 연동 pom.xml에 마리아db, jpa 추가하고 application.properties에 db 연결 정보를 추가한다. spring.datasource.driverClassName=org.mariadb.jdbc.Driver spring.datasource.url=jdbc:mariadb://localhost:3306/springboot spring.datasource.username=flature spring.datasource.password=aroundhub12# spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true spring.jpa.properties.hibernate.format_sql=true spring.jpa.show-s.. 2023. 10. 14. 06 데이터베이스 연동(1) 마리아db 설치 마리아디비 설치하고 실습용 디비 하나 만든다. ORM orm은 객체 관계 매핑을 의미한다. 자바와 같은 객체지향에서 관계형 디비의 테이블을 자동으로 매핑하는 방법을 말한다. JPA 자바 진영의 대표적인 orm은 jpa이다. jpa는 개발자 대신 적절한 sql을 생성하고 객체를 자동 매핑하는 역할을 수행한다. 가장 많이 사용되는 jpa의 구현체는 Hibernate이다. Hibernate 이 책은 jpa를 편하게 쓸수 있도록 지원하는 스프링 하위 프로젝트인 Spring Data JPA를 사용하기 때문에 JPA 자체를 직접 사용할 일은 없다. 그러나 다음 절부터 기본적인 개념에 대해서는 한번 짚고 넘어간다. (내가 원래 알고있는 리포지토리를 사용하는 방식이 Spring Data JPA를 이용한.. 2023. 10. 3. 03 개발환경 구성~05 API를 작성하는 다양한 방법 인텔리제이와 자바11을 설치 RestController와 RequestMapping를 사용해서 간단하게 컨트롤러를 만들 수 있다. @RestController @RequestMapping("/api/v1/get-api") public class GetController { } 프로젝트 수준에서 @RequestMapping을 사용하면 공통 url을 추가할 수 있다. 위 hello 예제처럼 메서드에 @RequestMapping을 쓰면 http의 모든 요청을 받으나... 스프링 4.3 버전 이후로는 각 http 메서드에 맞는 어노테이션을 사용하는게 바람직하다. @GetMapping @PostMapping @PutMapping @DeleteMapping GET API 만들기 매개변수가 없는 GET 메서드 @Ge.. 2023. 10. 2. 02 개발에 앞서 알면 좋은 기초 지식 서버 간 통신 마이크로서비스 아키텍쳐(MSA) 어떤 서비스가 회원가입, 결제시스템, 게시판 시스템등을 다 자체개발한 단일 서비스 아키텍쳐라면... 그 거대한 프로젝트는 어쩔 수 없이 변화에 보수적이게 될 것이다. 그래서 결제 모듈, 회원가입 모듈, 게시판 모듈 등등을 따로 개발하고, 원하는 모듈을 가져와서 사용한다면 애플리케이션 하나에 여러 기능을 넣어 개발하지 않고도 결제시스템, 회원가입, 게시판 등등을 가질 수 있을 것이다. 이렇게 서비스 규모를 작게 나누어 구성한 아키텍처를 MSA 라고 한다. 서비스를 MSA로 구성하면 각 모듈을 쓰기 위해 해당 서버와 통신해야 하는 경우가 발생한다. 귀에 못이 박히도록 들었던 서버-클라이언트 구조.. 가장 많이 사용하는 방식은 http/https 방식이다. 스프링.. 2023. 10. 1. 이전 1 2 3 4 5 ··· 29 다음 반응형