이 글은 인프런에 있는 김영한님의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 강의를 듣고 정리한 필기입니다. ⛅️ JUnit을 이용한 테스트 코드 작성 이번 시간에는 저번에 구현한 기능들이 제대로 작동하는지 확인하는 테스트를 해볼 것이다. 테스트를 해볼 수 있는 방법을 생각해보자. 당장 생각나는 방법은 두 가지이다. 1. java의 main 메서드를 통해서 실행 2. 웹 어플리케이션의 컨트롤러를 통해서 해당 기능을 실행 하지만 이 방법들은 준비하고 실행하는데 오래 걸리고, 반복적으로 실행하기가 어렵다는 단점이 있다. java에서 제공하는 JUnit이라는 프레임 워크로 테스트 코드를 작성함으로써 위의 단점들을 해결할 수 있다. 그럼 이제 JUnit 프레임 워크를 사용하여 ..
이 글은 인프런에 있는 김영한님의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 강의를 듣고 정리한 필기입니다. ⛅️ 회원 도메인 만들기 먼저 domain이라는 package를 만들고 Member 클래스를 생성하자. 이 클래스에는 회원의 정보를 담을 변수들을 선언한 것이다. 이전 시간에 살펴보았던 비즈니스 요구사항을 보면 회원에 필요한 데이터는 '회원 ID'와 '이름'이었다. 여기서 회원 ID는 회원이 직접 적는 값이 아니라 데이터 구분을 위해 시스템이 정한 ID이다. Long 타입으로 변수 id를 선언해준다. 이름은 회원이 직접 정하는 이름이다. 문자열 변수 String name을 선언한다. 이후 Getter/Setter를 생성해준다. (Getter/Setter가 좋냐 별..
이 글은 인프런에 있는 김영한님의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 강의를 듣고 정리한 필기입니다. ⛅️ "회원 관리 예제"에서 해볼 내용들 여러 시간에 걸쳐서 회원을 관리하는 예제를 5개의 단계에 걸쳐서 진행한다. 비즈니스 요구 사항 정리 회원 도메인과 리포지트리 만들기 - 회원 도메인과 회원 도메인 객체를 저장하고 불러올 수 있는 저장소인 리포지트리 객체 생성 회원 리포지트리 테스트 케이스 작성 - 위에서 만들었던 리포지트리가 정상 동작하는지 확인 회원 서비스 개발 - 실제 비즈니스 로직이 있는 회원 서비스 개발 회원 서비스 테스트 - 위에서 만든 회원 서비스가 정상 동작하는지 확인 여기서 테스트는 Junit과 test framework를 이용하여 만든다. ..
이 글은 인프런에 있는 김영한님의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 강의를 듣고 정리한 필기입니다. ⛅️ Spring 웹 개발에서 정적 컨텐츠 방식을 제외한다면? MVC 방식 원하는 view를 찾은 후, template engine을 통해서 해당 view를 html로 렌더링해서 웹 브라우저(고객)에게 넘겨주는 형식이다. API 방식 spring 개발 시 이야기하는 API방식은, JSON 형식으로 바꾸어 반환하는 것을 말한다. view없이 그대로 http body에 전달하는 방식이다. ⛅️ @ResponseBody @ResponseBody란? http(통신 프로토콜)의 body 부에 return(반환)값을 직접 넣어주겠다는 뜻. Template engine과의 차..
이 글은 인프런에 있는 김영한님의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 강의를 듣고 정리한 필기입니다. ⛅️ MVC란 무엇인가? MVC는 Model, View, Controller의 약자이다. 과거에는 Controller와 view가 따로 분리되어 있지 않았다. Class에 역할을 하나씩 부여하는 것처럼 MVC도 역할을 나누는 것이다. View는 화면을 렌더링하는 코드들이 들어가있다. Controller에는 비지니스 모델, 서버 뒷단에 관련된 일들, 내부적인 것들을 처리한다. Model은 화면(view)에서 필요한 자료들을 담아서 화면(view)쪽에 넘겨주는 패턴을 많이 사용한다. 이것이 MVC 패턴이다. ⛅️ @RequestParam을 이용한 Controller ..
이 글은 인프런에 있는 김영한님의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 강의를 듣고 정리한 필기입니다. ⛅️ 웹을 개발하는 세 가지 방법 웹을 개발하는 방법에는 크게 세 가지가 있다. 정적 컨텐츠, MVC와 템플릿 엔진, API가 그 예인데, 어떤 것인지 간단하게 알아보자. 1. 정적 컨텐츠 (static contents) 바로 이전 시간에 사용했던 방식이다. welcome page를 만들었던 것처럼 서버에서 따로 가공을 거치지 않고 파일을 웹 브라우저에 그대로 보내는 방식이다. 2. MVC와 템플릿 엔진(template engine) 가장 많이 사용하는 방식이다. 먼저 템플릿 엔진(template engine)을 살펴보자. 과거의 JSP, PHP 같은 것들이 te..