
이 혼공스프링부트 시리즈는 가제 "혼자 구현하는 스프링부트 웹서비스" 책을 집필하기 위한 자료입니다.글과 그림의 저작권은 필자(블로그 주인장)에게 있습니다.미래의 독자와의 원활한 소통을 위해서 공개된 글도 있지만, 형편에 따라서 비공개 될 수도 있습니다. 감사합니다.

스프링부트 책을 기획하며...

자바와 스프링부트 프레임워크는 우리나라에서 가장 많은 서버 개발 환경이다. 하지만 자바와 스프링부트를 강의해오면서 헷갈려하고 어려워하는 수강생들을 보곤 한다.이유는 구글링을 해보아도 한 눈에 내용을 파악하고 이해하기 쉬운 관련된 자료를 얻기 힘들었다.그도 그런것이 스프

# 들어가는 글 # 감사의 글 # 1장 스프링부트를 시작하면서 ## 1-1 스프링부트란 무엇인가요? ## 1-2 스피링부트 개발환경 설치
스프링부트 프레임워크 개발환경에서 저자가 다루기로 한 기술요소에 대한 설명과 선택한 이유이다.스프링 프레임워크 : 스프링 레거시(Spring Lagacy) vs 스프링부트(Spring Boot)스프링은 환경설정이 반이다. 라는 말이 있다. 그만큼 개발환경 설정이 복잡해
1-1 스프링부트란 무엇인가요?
1-2 스피링부트 개발환경 설치

자바(Java)로 프로그램을 작성하기 위해서는 JDK(Java Development Kit)이라는 라이브러리 소프트웨어를 내 PC에 설치해야 한다.JDK에는 두가지 종류가 있다. 오라클 JDK와 오픈 JDK이다. 오라클 JDK는 오픈 JDK의 기능에 추가적인 기능을 제

1-2-2 인텔리제이 아이디어 설치하기

이 책에서 실습에 사용할 웹 브라우저는 크롬 브라우저이다. 크롬브라우저가 설치되어 있지 않다면, 아래 링크에서 설치하면 된다.https://www.google.com/intl/ko_kr/chrome/

1-3 첫번째 스프링부트 프로젝트 생성
얼티밋 버전과 달리 인텔리제이 커뮤니티 버전은 스프링 프로젝트 자동 생성을 지원하지 않으므로, https://start.spring.io/ 사이트에 들어가서 스프링 프로젝트를 다운받도록 합니다.프로젝트 설정은 먼저 Gradle Project로 하고 개발언어는
다운로드 폴더에 다운로드된 zip파일을 내문서 밑의 springboot폴더에 복사한 후 압축을 풀어줍니다. 압축을 풀때, "Ex01FirstApp"이름으로 풀기 하면, 기본적으로 Ex01FirstApp 폴더 밑에 Ex01FirstApp폴더가 하나 더 생깁니다. 이유는
그 다음 src>main>java>com.study.springboot 폴더로 이동하여, Ex01FirstAppApplication.java파일에 간단히 콘솔 로그를 남깁니다.\+버튼을 누르면 public static main함수의 코드가 열립니다. 왼쪽의 녹색 세모모
이제 크롬 웹브라우저에 응답하는 서버 프로그램을 만들겠습니다.파일>새로 만들기>Java 클래스를 클릭하여 MainController.java파일을 com.study.springboot 폴더(또는 패키지라고도 한다.)에 생성합니다.패키지(Package) : 폴더의 경로로
전에 데브툴스(Devtools)라는 라이브러리를 프로젝트 생성시 포함하고 있었습니다. Devtools는 소스 변경시 자동으로 빌드후 실행하는 기능을 가지고 있습니다. 이 기능을 사용하기 위해서는 인텔리제이에서 아래와 같이 설정해주겠습니다.파일>설정>고급 설정 메뉴에서

1-4 JUnit5와 테스트주도개발(TDD)
이전에 만든 Ex01FirstApp 프로젝트를 이용하여 Ex02FirstAppTest라는 프로젝트를 생성하도록 하겠습니다. 필자는 강의하면서 예제 소스가 짧고 간결할 수록 이해하기 싶다는 것을 경험적으로 알고 있습니다. 따라서 가급적 예제는 간결하게 하나하나 작성해 가
프로젝트뷰에서 build.gradle파일을 열어보면, 이미 JUnit5 라이브러리가 spring-boot-starter-test라는 이름으로 기본으로 들어가 있으므로 그냥 사용하면 됩니다.그 밑에 있는 mockito-core:4.8.0은 MockMvc클래스를 사용하기
main() 메서드 왼쪽의 실행 버튼을 클릭하면, 메서드 단독으로 실행이 가능합니다.왼쪽 위의 체크버튼을 클릭하면 통과한 테스트 목록을 함께 보여줍니다.녹색 체크 버튼은 통과한 테스트 케이스이므로 예상된 테스트 결과가 정상적으로 나왔다는 뜻입니다. 테스트를 실패하도록

2-1 객체 생성과 사용하기 - 의존주입

2-2 객체 생성과 사용하기 - 스프링 의존주입사용하기

스피링 객체(빈)을 생성하고 주입(제공)받기 위한 방법은 크게 2가지이다.@Bean 객체@Component 객체@Configuration 클래스와 @Bean 메서드 객체는 이전 장에서 배웠다.일반적으로 빈을 생성하기 위해서는 @Component가 더 많이 사용된다.그럼

2-3 코드변경시 자동실행 - devtools

이번 예제에서는 실제 의존주입을 사용하는 방법을 알아보자.

2-5 롬복 사용하기

2-6 웹페이지로 응답하기 - 정적 웹
이전 예제에서 정적인 웹으로 응답하는 서버를 만들어보았습니다. 대부분의 웹 사이트는 사용자에 요청에 따라 다양한 정보를 제공합니다. 네이버 뉴스 사이트를 보더라도, 정치, 시사, 스포츠, 리빙 등 다양한 정보를 제공합니다. 이는 데이타베이스에 있는 내용을 가져오면서 동

2-7 웹페이지로 응답하기 - 동적 웹

2-8 동적 웹페이지로 응답하기 - 머스테치
2-9 동적 웹페이지로 응답하기 - JSP