Spring Framework
-
스프링 부트 - 회원 관리 예제 실습(회원 서비스 개발)Spring Framework 2022. 2. 13. 00:01
이전 시간에는 회원 도메인과 리포지토리를 생성했습니다. https://junuuu.tistory.com/75 스프링 부트 - 회원 관리 예제 실습(회원 도메인과 리포지토리 생성) 비즈니스 요구사항 정리 데이터 : 회원 ID, 이름 기능 : 회원 등록, 조회 아직 데이터 저장소가 선정되지 않은 가상의 시나리오(어떤 데이터베이스를 사용할지 정해지지 않음) 일반적인 웹 애플리 junuuu.tistory.com 오늘은 회원 도메인과 리포지토리를 기반으로 회원 서비스를 개발해보겠습니다. 클래스 의존관계 MemberService는 MemberRepository에 의존적이기 때문에 MemberRepository를 사용해야 합니다. 1. hello.hellospring.service 패키지 생성 2. hello.hel..
-
스프링 부트 - 회원 관리 예제 실습(회원 도메인과 리포지토리 생성)Spring Framework 2022. 1. 26. 00:01
비즈니스 요구사항 정리 데이터 : 회원 ID, 이름 기능 : 회원 등록, 조회 아직 데이터 저장소가 선정되지 않은 가상의 시나리오(어떤 데이터베이스를 사용할지 정해지지 않음) 일반적인 웹 애플리케이션 계층 구조 컨트롤러 : 웹 MVC의 컨트롤러 역할 서비스 : 도메인을 기반으로 핵심 비즈니스 로직 구현(회원은 중복가입이 안된다 등의 로직) 리포지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인 : 회원, 주문, 쿠폰 등 데이터베이스에 저장되고 관리되는 비즈니스 도메인 객체 클래스 의존관계 핵심 비즈니스 로직을 구현 서비스에는 MemberService가 있습니다. 리포지토리에는 MemberRepository가 있는데 아직 데이터베이스 저장소(RDB, NoSQL 등)가 선정되지 않았으..
-
Thymeleaf란? ( + Thymeleaf 사용법, 문법 맛보기)Spring Framework 2022. 1. 13. 00:01
스프링 부트를 시작하기 위해 Thymeleaf라는 템플릿 엔진 의존성을 추가하였습니다. 또한 템플릿 엔진에 대해서 알아보았고 Spring Boot가 자동 환경 설정을 지원하는 Thymeleaf, Mustache, FreeMarker, Groovy에 대한 비교도 해보았습니다 https://junuuu.tistory.com/55?category=968779 템플릿엔진이란? 이전에 Spring Initailzr를 통하여 스프링 부트를 시작할 때 Dependencies 부분에 Thymeleaf라는 템플릿 엔진을 추가하여 사용했습니다. 또한 동적인 페이지를 만들기 위해 Thymeleaf라는 템플릿 엔진을 사용 junuuu.tistory.com https://junuuu.tistory.com/60 ThymeLeaf..
-
ThymeLeaf vs Mustache vs Groovy vs FreeMarkerSpring Framework 2022. 1. 12. 00:01
저번 시간에는 템플릿 엔진에 대해서 알아봤습니다. https://junuuu.tistory.com/55?category=968779 템플릿엔진이란? 이전에 Spring Initailzr를 통하여 스프링 부트를 시작할 때 Dependencies 부분에 Thymeleaf라는 템플릿 엔진을 추가하여 사용했습니다. 또한 동적인 페이지를 만들기 위해 Thymeleaf라는 템플릿 엔진을 사용 junuuu.tistory.com 스프링부트는 아래와 같은 템플릿 엔진의 자동 환경 설정을 지원한다고 공식문서에 나와있습니다. 4가지의 템플릿 엔진 중에 저희는 Thymeleaf를 선택하여 사용하였습니다. 그러면 4가지의 템플릿 엔진은 어떤 차이점이 있고 어떤 템플릿 엔진을 사용하는 게 좋을까요? 각 템플릿 엔진의 빌드 크기 ..
-
서블렛(Servlet)이란?Spring Framework 2022. 1. 9. 00:01
서블렛(Servlet)이란? 자바를 지원하는 웹이나 애플리케이션에서 실행되는 자바 프로그램으로 웹 서버에서 얻은 요청을 처리하고 응답을 생성하여 보냅니다. 즉 서버측에서 작동하며, 클라이언트가 보내는 요청을 처리하여 다시 클라이언트에게 전송하는 자바 프로그램입니다. 서블릿을 사용하는 이유 일반적으로 웹 서버는 정적인 페이지만을 제공합니다. 정적인 페이지란 100명의 사용자가 있으면 100명의 사용자가 모두 같은 페이지를 보게 됩니다. 하지만 동적인 페이지를 제공하기 위해서 웹서버는 다른 곳에 도움을 요청하여 동적인 페이지를 작성해야 합니다. 동적인 페이지란 100명의 사용자가 있으면 100명의 사용자가 다른 페이지를 볼 수 있습니다. 예를 들자면 평소에 우리가 로그인을 했을 때 "~~ 님 반갑습니다"라는..
-
템플릿엔진이란?Spring Framework 2022. 1. 7. 00:01
이전에 Spring Initailzr를 통하여 스프링 부트를 시작할 때 Dependencies 부분에 Thymeleaf라는 템플릿 엔진을 추가하여 사용했습니다. 또한 동적인 페이지를 만들기 위해 Thymeleaf라는 템플릿 엔진을 사용하기 위해 아래와 같은 HTML을 만들었습니다. 안녕하세요. 손님 그러면 템플릿엔진이란 무엇일까요? 템플릿 양식과 특정 데이터 모델에 따른 입력 자료를 합성하여 결과 문서를 출력하는 소프트웨어(또는 소프트웨어 컴포넌트)를 말합니다. 그중 웹 템플릿엔진은 웹 템플릿 양식인 View Code(HTML)와 특정 데이터 모델인 Data Logic Code(DB connection 등)을 합성하여 웹 콘텐츠를 출력하는 소프트웨어를 말합니다. 위의 HTML을 예시로 들면 data 부분..
-
MVC 패턴이란? (스프링 MVC)Spring Framework 2022. 1. 4. 00:01
이전에 포스팅했던 Spring Framework의 특징 중 하나인 MVC 패턴에 대하여 알아보겠습니다. https://junuuu.tistory.com/35?category=968779 Spring Framework 특징 스프링 프레임워크(Spring Framework)의 특징에 대해 알아보겠습니다. 스프링프레임워크(Spring Framework)란? https://junuuu.tistory.com/17?category=968779 Spring Framework의 유래 Spring Framework란? 자바.. junuuu.tistory.com MVC 패턴이란? Model, View, controller의 약자로 애플리케이션을 세 가지의 역할로 구분하는 디자인 패턴입니다. 디자인 패턴이란? 프로젝트를 개..
-
스프링부트 Welcome Page 만들기(스프링부트 hello 출력하는 페이지 만들기)Spring Framework 2021. 12. 31. 18:01
이전시간에 스프링부트 스타터를 통하여 프로젝트를 만들고 이를 실행하여 localhost:8080에 접속하였을 때 Whitelabel error page 에러 메시지가 출력되었습니다. 오늘은 에러 메시지 대신에 hello가 출력되도록 만들어 보겠습니다. 또한 thymeleaf 템플릿 엔진을 사용하여 동적인 페이지를 만들어 보겠습니다. Welcome Page란? 도메인만 누르고 들어왔을 때 첫 화면을 의미합니다. 예를 들면 네이버나 구글에 접속하였을 때 첫 화면을 의미합니다. 여기서는 localhost:8080으로 접속하였을 때 첫 화면을 의미합니다. 즉, 스프링부트를 통해 hello가 출력되는 페이지를 만들어보겠습니다. src/main/recources/static 폴더에 index.html 파일 만들고 ..