spring
[Spring 입문] 5. 회원 관리 예제 - 웹 MVC 개발
1. 회원 웹 기능 - 홈 화면 추가 localhost:8080 으로 호출 container에서 뒤짐 localhost:8080/ < 컨트롤러 있음 연결! package hello.hellospring.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; @Controller public class HomeController { @GetMapping("/") public String Home() { return "home"; } } 2. 회원 웹 기능 - 등록 package hello.hellospring.controller; import he..
[Spring 입문] 3. 회원 관리 예제 - 백엔드 개발
1. 비즈니스 요구사항 정리 데이터 회원 ID 이름 기능 회원 등록 조회 아직 DB 선정하지 않은 상황 ← 이라는 설정 컨트롤러 : 웹 MVC의 컨트롤러 (API 생성 등) 서비스 : 핵심 비즈니스 로직 도메인 : 데이터베이스에 저장 / 관리되는 것 리포지토리 : 데이터 베이스 접근 / 도메인 객체를 DB에 저장 및 관리 인터페이스로 구현 클래스 변경 가능하게 설계(DB 선정 안 함) 구현체로 메모리 기반의 가벼운 데이터 저장소로 개발 진행 2. 회원 도메인과 레포지토리 만들기 1. Member 클래스 생성 package hello.hellospring.domain; public class Member { private Long id; // database index에 가까움 private String ..
[Spring 입문] 2. 스프링 웹 개발 기초
정적 컨텐츠 = 파일을 그대로 고객에게 전달 MVC & 템플릿 엔진 = html을 서버에서 가공해서 동적 컨텐츠로 전달 API = json 데이터 포맷으로 클라이언트에 데이터 전달 Vue.js, React 등에서 사용 서버끼리 통신할 때 1. 정적 컨텐츠 Spring boot는 static/ 폴더에서 정적 컨텐츠를 찾아서 사용한다. ex) resources/static/hello-static.html 정적 컨텐츠 입니다. 흐름도 주소 요청 보냄 톰캣 서버에서 접수 먼저 스프링 컨테이터에서 컨트롤러 있는지 확인 없으면 static 하위의 파일 찾음 있으면 웹 브라우저로 리턴해줌 2. MVC와 템플릿 엔진 MVC = Model View Controller 과거 view와 controller가 나누어지지 않았..
[Spring 입문] 1. 프로젝트 환경 설정
1. 프로젝트 생성 project - Gradle spring boot version - 2.7.12 spring boot 3.x.x로 선택하는 경우 java version이 17 이상이어야함 java version 12(11) artifact - output name package name = name.artifact 형태로 패키징됨 Thymeleaf - template engine, 뒤에서 설명 spring web - web builder 프로젝트 구성 src/main src/test ⇒ test 코드를 따로 작성하는 것에 대한 중요성이 대두되는 중. build.gradle ⇒ 버전 설정, 라이브러리 로드 등 python virtual environment에서 requirement.txt처럼 depe..