
주제 : 스프링의 핵심 기술들을 한번에 빠르게 훑고 간다.목표 : 이전에 공부했던 스프링 핵심원리를 복습하면서 전반적인 감을 찾는다!스프링은 자바 언어 기반의 프레임워크자바 언어의 가장 큰 특징 - 객체 지향 언어스프링은 객체 지향 언어가 가진 강력한 특징을 살려내는
개요 주제 : 스프링의 핵심 기술들을 한번에 빠르게 훑고 간다. 목표 : 이전에 공부했던 스프링 핵심원리를 복습하면서 전반적인 감을 찾는다! Chapter2. 스프링 핵심 원리 이해1 > 0. 비즈니스 요구사항과 설계 회원 회원을 가입하고 조회할 수 있다.
주제 : 스프링의 핵심 기술들을 한번에 빠르게 훑고 간다.목표 : 이전에 공부했던 스프링 핵심원리를 복습하면서 전반적인 감을 찾는다!ApplicationContext 를 스프링 컨테이너라 한다.ApplicationContext 는 인터페이스이다.스프링 컨테이너는 XML
주제 : 스프링의 핵심 기술들을 한번에 빠르게 훑고 간다.목표 : 이전에 공부했던 스프링 핵심원리를 복습하면서 전반적인 감을 찾는다!의존관계 주입은 크게 4가지 방법이 있다.생성자 주입수정자 주입필드 주입일반 메서드 주입이름 그대로 생성자를 통해서 의존 관계를 주입 받
0.개요 주제 : 스프링의 MVC 기술들을 한번에 빠르게 훑고 간다. 목표 : 이전에 공부했던 스프링 웹 MVC를 복습하면서 전반적인 감을 찾는다! 1.스프링 웹 MVC > 웹 서버 HTTP 기반으로 동작 정적 리소스 제공, 기타 부가기능 정적 HTML, CSS, J
주제 : 스프링의 MVC 기술들을 한번에 빠르게 훑고 간다.목표 : 이전에 공부했던 스프링 웹 MVC를 복습하면서 전반적인 감을 찾는다!프론트 컨트롤러 도입 전프론트 컨트롤러 도입 후프론트 컨트롤러 패턴 특징프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받음(공통
주제 : 스프링의 MVC 기술들을 한번에 빠르게 훑고 간다.목표 : 이전에 공부했던 스프링 웹 MVC를 복습하면서 전반적인 감을 찾는다!직접 만든 MVC 프레임워크와 스프링 MVC를 비교해보자.진짜 스프링 MVC 구조와 별 차이가 없다.(진짜 MVC 구조)직접 만든 프
주제 : 스프링의 MVC 기술들을 한번에 빠르게 훑고 간다.목표 : 이전에 공부했던 스프링 웹 MVC를 복습하면서 전반적인 감을 찾는다!앞으로 로그를 사용할 것이기 때문에, 이번시간에는 로그에 대해서 간단히 알아보자.운영 시스템에서는 System.out.println(
내용 : MyBatis, JPA를 사용하기 전에 JDBC에 대한 정리우선 H2데이터베이스를 사용해서 테스트 해보자. 가볍고 편리한 DB데이터베이스 파일 생성 방법사용자명은 saJDBC URL에 다음을 입력jdbc:h2:~/test (최초 한번) -> 이 경우 연결 시험
0. 개요 내용 : MyBatis, JPA를 사용하기 전에 JDBC에 대한 정리 1. 커넥션 풀 이해 > 데이터베이스 커넥션을 매번 획득 > 데이터베이스 커넥션을 획득할 때는 다음과 같은 복잡한 과정을 거친다. 이렇게 커넥션을 새로 만드는 것은 과정도 복잡하고 시간
내용 : MyBatis, JPA를 사용하기 전에 JDBC에 대한 정리데이터를 단순히 파일에 저장하는 것이 아니라, 데이터베이스에 저장하는 대표적인 이유는 바로 데이터베이스는 트랜잭션이라는 개념을 지원하기 때문이다.트랜잭션은 하나의 거래를 안전하게 처리하도록 보장해주는
내용 : MyBatis, JPA를 사용하기 전에 JDBC에 대한 정리서비스 계층은 특정 기술에 종속적이지 않게 개발해야 한다. 이렇게 하면 향후 구현 기술이 변경될 때 변경의 영향 범위를 최소화할 수 있다.지금까지 개발한 MemberService2코드들을 리팩토링해야
내용 : MyBatis, JPA를 사용하기 전에 JDBC에 대한 정리서비스 계층은 가급적 특정 구현 기술에 의존하지 않고, 순수하게 유지하는 것이 좋다. 이렇게 하려면 예외에 대한 의존도 함께 해결해야한다.예를 들어서 서비스가 처리할 수 없는 SQLException 에
주제 : 이전에 배운 내용을 기반으로 데이터 접근 기술들을 학습한다.적용 데이터 접근 기술JdbcTemplateMyBatisJPA, Hibernate스프링 데이터 JPAQuerydsl여기에는 크게 2가지 분류가 있다.1\. SQL Mapper 주요기능개발자는 SQL만
주제 : 이전에 배운 내용을 기반으로 데이터 접근 기술들을 학습한다.로컬에서 사용하는 애플리케이션 서버와 테스트에서 같은 데이터베이스를 사용하면 테스트에서 문제가 발생한다. 이런 문제를 해결하려면 테스트를 다른 환경과 철저하게 분리해야 한다. 가장 간단한 방법은 테스트
개요 주제 : 스프링 MVC의 기본 기능을 공부하면서 부족했던 기능 학습한다. 내용 : 스프링 MVC2를 통해서 검증과 예외 처리에 대해 학습한다. 1. 검증1 - validation > 요구사항 : 검증 로직 추가 타입 검증 가격, 수량에 문자가 들어가면 검증 오류 처리 필드 검증 상품명 : 필수, 검백X 가격 : 1000원 이상, 1백만원 ...
주제 : 스프링 MVC의 기본 기능을 공부하면서 부족했던 기능 학습한다.내용 : 스프링 MVC2를 통해서 검증과 예외 처리에 대해 학습한다.검증 기능을 지금처럼 매번 코드로 작성하는 것은 상당히 번거롭다. 특히 특정 필드에 대한 검증 로직은 대부분 빈 값인지 아닌지,
주제 : 스프링 MVC의 기본 기능을 공부하면서 부족했던 기능 학습한다.내용 : 스프링 MVC2를 통해서 검증과 예외 처리에 대해 학습한다.홈 화면 - 로그인 전회원 가입로그인홈 화면 - 로그인 후본인 이름(누구님 환영합니다.)상품 관리로그 아웃보안 요구사항로그인 사용

주제 : 스프링 MVC의 기본 기능을 공부하면서 부족했던 기능 학습한다.내용 : 스프링 MVC2를 통해서 검증과 예외 처리에 대해 학습한다.공통 관심 사항요구사항을 보면 로그인 한 사용자만 상품 관리 페이지에 들어갈 수 있어야 한다.그런데 문제는 로그인 하지 않은 사용
주제 : 예외처리는 굉장히 중요하다! 서블릿 예외처리와 스프링부트 오류 처리에 대해 알아보자!스프링이 아닌 순수 서블릿 컨테이너는 예외를 어떻게 처리하는지 알아보자.서블릿은 다음 2가지 방식으로 예외 처리를 지원한다Exception(예외)response.sendErro
내용 : 이제는 API 예외 처리에 대해 배워보자.목표 : HTML 페이지의 경우 지금까지 설명했던 것 처럼 4xx, 5xx와 같은 오류 페이지만 있으면 대부분의 문제를 해결할 수 있다. 그런데 API의 경우에는 생각할 내용이 더 많다. 오류 페이지는 단순히 고객에게
내용 : 이제는 파일 업로드(multipar/form-data)에 대해 배워보자.일반적으로 사용하는 HTML Form을 통한 파일 업로드를 이해하려면 먼저 폼을 전송하는 다음 두 가지 방식의 차이를 이해해야 한다.HTML 폼 전송 방식application/x-www-f
section0 : Web Service & Web Applicationsection1 : Spring Boot로 개발하는 RESTful APIsection2 : User Service API 추가section3 : Restful service 기능 확장section4
개요. 스프링 부트를 이용한 RESTful > section0 : Web Service & Web Application section1 : Spring Boot로 개발하는 RESTful API section2 : User Service API 추가 section3 :

내용: 미니프로젝트를 해보려고 하는데 중요한 부분들 위주로 요약해보려고 한다.애플리케이션의 전체 동작 방식을 구성하기 위해 구현 객체를 생성하고 연결하는 책임을 가지는 별도의 설정 클래스를 만든다.AppConfig는 애플리케이션의 실제 동작에 필요한 구현 객체를 생성M
내용 : JDBC 프로젝트 전에 필요한 부분들 정리각각의 데이터베이스마다 커넥션을 연결하는 방법, SQL을 전달하는 방법, 그리고 결과를 응답 받는 방법이 모두 다르다.이런 문제를 해결하기 위해 JDBC라는 자바 표준이 등장한다.대표적으로 다음 3가지 기능을 표준 인터
자바 예외에 대해 정리하고 가자! Exception 을 상속받은 예외는 체크 예외가 된다.RuntimeException 을 상속받으면 언체크 예외가 된다.체크 예외 VS 언체크 예외체크 예외: 예외를 잡아서 처리하지 않으면 항상 throws 에 던지는 예외를 선언해야
섹션 4. Spring Boot API 사용 Level3 단계의 REST API 구현을 위한 HATEOAS 적용 > HATEOAS(Hypermedia As The Engine Of Application State)는 REST API 디자인 패턴 중 하나로, 클라이언
JPA 개요Enity 설정H2 Console 사용을 위한 SecurityConfig 파일 수정JPA Service를 위한 GET/POST/DELETE 메소드 추가Post Entity 추가와 User Entity와의 관계 설정Java Persistence API자바 OR
개요 혼자서 무중단 배포 웹 서비스를 만들어보자! 챕터1. 인텔리제이로 스프링 부트 시작 챕터2. 스프링 부트에서 테스트 코드 작성 2-1. 테스트 코드 소개 > TDD TDD는 테스트가 주도하는 개발을 이야기합니다. 테스트 코드를 먼저 작성하는 것부터 시작입니
DTO(Data Transfer Object)와 DAO(Data Access Object)를 나누는 이유는 소프트웨어 설계 원칙 중 하나인 SRP (Single Responsibility Principle)를 따르기 위함입니다. 각 클래스가 하나의 책임만 가지도록 분리
애노테이션이 헷갈리는 나를 위해 정리@Configuration과 @Bean을 사용하여 스프링 컨테이너가 관리하는 빈을 생성하고 구성합니다.@Configuration: 설정 클래스를 정의합니다. 이 클래스는 스프링 컨테이너가 관리하는 빈을 생성하고 구성하는 메서드를 포함
프로젝트를 하던 중 만난 @Builder.. 사용하니 테스트 코드를 작성하는데 굉장히 유용하여 따로 정리해보려고 한다.객체를 정의하고 그 객체를 생성할 때 보통 생성자를 통해 생성하는 것을 생각한다. 하지만 생성자를 통해 객체를 생성하는데 몇 가지 단점이 있어 객체를