Spring 16

STEP2 회원 리포지토리 인터페이스 생성

*인프런 강의 중 일부 예제 코드를 발췌하였으며, 주석을 통해 학습 이해도를 높이는 방향으로 스터디하고 있습니다. 인터페이스 개발이 왜 필요한가? The point is to separate the API (what to do) from the implementation (how to do it). 요지는 역할과 구현을 구분하는 것입니다. 백엔드 개발 시에 자주 접할 상황을 예시로 들겠습니다. DB 방식(RDB or NoSQL)이 정해지지 않은 상황인데 개발은 기간내로 해야하는 상황입니다. 난감하겠지만 이때 인터페이스 설계를 통해 개발을 진행할 수 있습니다. DB에 접근하고 도메인 객체를 DB에 저장관리하는 리포지토리 인터페이스를 우선 구축하고, 별도 구현체 생성하여 가벼운 메모리 기반의 데이터 저장소로..

Spring 2023.11.06

STEP1 회원 도메인 객체 생성

*인프런 강의 중 일부 예제 코드를 발췌하였으며, 주석을 통해 학습 이해도를 높이는 방향으로 스터디하고 있습니다. 회원을 등록/조회하는 서비스를 개발하고자 합니다. 회원의 id와 name을 등록하고 조회할 수 있도록 회원 도메인 객체를 생성해보는 실습입니다. 1. 코드 public class Member { // domain 역할: 회원 이름과 id 등록 및 조회 // 회원가입시 회원 이름 private String name; // 회원가입시 회원 id : 통상 시스템에 의해 결정됨 private Long id; // name 조회 public String getName() { return name; } // name 등록 public void setName(String name) { this.name ..

Spring 2023.11.06

자바 코드를 통해 살펴본 클래스(Class)

자바에서 클래스의 중요성은 수만가지 이유를 붙여 강조할 수 있습니다. 저는 "많이 사용하게 될테니" 알아둬야할 개념 중 하나라고 말씀 드리고 싶습니다. 간단하게 정의 및 코드 구조를 통해 클래스를 알아보겠습니다. 1. 정의 자바는 객체 지향적, 클래스 기반의 프로그래밍 언어입니다. 이해를 돕고자 흔한 예시(제빵과정)를 설명 드리겠습니다. 빵을 만들때 모양을 잡아주는 제빵틀 = 클래스(Class) 틀을 통해 만들어진 빵 = 객체(Object) 결국 객체 지향적 언어인 자바를 활용하기 위해선 클래스는 필수인 셈이죠. 2. 자바 코드 구조 JavaStart 파일을 생성했고, "class"를 확인하실 수 있습니다. public class JavaStart { } 이번엔 클래스를 활용해서 회원 이름을 등록하고 조..

Spring 2023.11.04

003. 스프링 웹 개발 기초 스터디 2편

웹 개발은 크게 3가지로 구분지을 수 있습니다. 1) 정적 컨텐츠 2) MVC와 템플릿 엔진 3) API 이번에는 2) / 3) 내용에 대해 중점적으로 다뤄보겠습니다. 1. 정적 컨텐츠 정적 파일을 웹 브라우저에 그대로 내려주는 것을 의미합니다. 1편 내용 참고하시기 바랍니다. 2. Spring MVC와 템플릿 엔진 MVC는 model, view, control를 의미하고 요즘 개발 트렌트이며 현업에서 주로 사용되고 있다고 하네요. 템플릿 엔진은 과거에 소위 말하는 JSP, PHP, ASP가 이에 해당됩니다. 다만 자바의 경우 공식 템플릿엔진을 `thymeleaf`로 바꾼지 꽤 됐죠. https://docs.spring.io/spring-framework/docs/3.2.x/spring-framework..

Spring 2023.10.21

002. view를 통한 스프링 웹 개발 기초 스터디 1편

아래 두가지 방식을 실습 위주로 설명 드리겠습니다. (실습환경: IntelliJ) 1. static welcome page 2. thymeleaf 템플릿 엔진 1. static welcome page (정적 파일 동작) => View https://docs.spring.io/spring-boot/docs/2.3.1.RELEASE/reference/html/spring-boot-features.html#boot-features-spring-mvc-welcome-page It first looks for an `index.html` file in the configured static content locations. 스프링 부트가 제공하는 welcome page기능인데요. html 파일을 만들어서 stat..

Spring 2023.10.21

001. Spring boot 로드맵과 강의 커리큘럼

*출처(Source) https://roadmap.sh/spring-boot 반드시 참고하시기 바랍니다. 각 용어에 대한 상세 설명도 지원합니다. 1. 로드맵 가장 중요하다고 생각되는 건 MVC이다. Model-View-Controller (MVC) : 역할에 따른 기능 부여 ㄴ Model : 어플리케이션의 데이터와 비즈니스 로직 처리 ㄴ View : 웹 브라우저를 통해 visualization하기 위한 HTML 처리 ㄴ Controller : model과 view 간 중개자 역할을 하며 상호동작 관리 ※ 과거 Spring boot 개발 초기단계에서는 model/view/controller 구분없이 "view" 하나로만 모든 로직을 구현했다고 한다. 유지보수하는데 엄청 힘들었을 것 같다.. 2. 커리큘럼..

Spring 2023.10.20