Spring 35

[Spring/입문] 회원 관리 예제 - 웹 MVC 개발

회원 관리 예제 - 웹 MVC 개발회원 웹 기능 - 홈 화면 추가HomeController를 만들자package hello.hellospring.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;@Controllerpublic class HomeController { // localhost:8080/ 요청이 오면 이 메서드가 호출되어 home.html이 호출됨 @GetMapping("/") public String home() { return "home"; }}GetMapping("/")는 그냥 첫번째 local..

Spring/MVC 2024.04.29

[Spring/입문] 스프링 빈과 의존관계

스프링 빈과 의존관계컴포넌트 스캔과 자동 의존관계 설정회원 컨트롤러가 회원서비스와 회원 리포지토리를 사용할 수 있게 의존관계를 준비하자회원 컨트롤러에 의존관계 추가package hello.hellospring.controller;import hello.hellospring.service.MemberService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;@Controllerpublic class MemberController { private final MemberService memberService = new MemberService(); //..

Spring/MVC 2024.04.29

[Spring/입문] 회원 관리 예제 - 백엔드 개발

회원관리 예제 - 백엔드 개발비지니스 요구사항 정리회원 도메인과 리포지토리 만들기회원 리포지토리 테스트 케이스 작성회원 서비스 개발회원 서비스 테스트비지니스 요구사항데이터: 회원ID, 이름기능: 회원 등록, 조회아직 데이터 저장소가 선정되지 않음(가상의 시나리오)일반적인 웹 application layer 구조컨트롤러: 웹 MVC의 컨트롤러 역할서비스: 핵심 비즈니스 로직 구현ex) 중복 가입 불가리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리도메인: 비즈니스 도메인 객체, 예) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨클래스 의존관계아직 데이터 저장소가 선정되지 않아서, 우선 인터페이스로 구현 클래스를 변경할 수 있도록 설계데이터 저장소는 RDB, NoSQL 등등..

Spring/MVC 2024.04.29

[Spring/입문] 스프링 웹 개발 기초

스프링 웹 개발 기초정적 컨텐츠서버에서 특별한 동작을 하지 않고 파일을 그대로 웹브라우저(client)로 전달스프링 부트는 정적 컨텐츠를 제공함 정적 컨텐츠 입니다. localhost:8080/hello-static.html원하는 파일을 넣으면 파일 그대로 반환됨내장 톰켓 서버가 요청을 받고 Spring에 controller가 있는지 찾아봄hello-static이라는 컨트롤러, 맵핑된 컨트롤러가 존재Xresources 안에 있는 static/hello-static.html을 찾음찾은 파일을 반환MVC와 템플릿 엔진Model, View, Controller서버에서 변형을 해서(EX. HTML 파일 변경) 웹브라우저(client)로 전달hello! empty단순히 hello-mvc를 열..

Spring/MVC 2024.04.28

[Spring/입문] 스프링 View 환경설정

View 환경설정Welcome Page 만들기resources/static/index.html에 다음 파일 생성Hellohello스프링 부트가 제공하는 Welcome Page 기능static/index.html 을 올려두면 Welcome page 기능을 제공한다.thymeleaf 템플릿 엔진Controller 만들기hello.hellospring 패키지 안에 controller 패키지를 만들고 controller 클래스를 생성@Controllerpublic class HelloController { @GetMapping("hello") public String hello(Model model) { model.addAttribute("data", "hello!!"); r..

Spring/MVC 2024.04.28