Spring boot

    [입문] 회원 관리 예제_백엔드 개발

    비즈니스 요구사항 정리 일반적인 웹 어플리케이션 계층 구조 컨트롤러: 웹 MVC의 컨트롤러 역할 서비스: 핵심 비즈니스 로직 구현 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인: 비즈니스 도메인 객체, 예) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨 데이터 저장소가 선정되지 않아 인터페이스로 구현 클래스를 변경할 수 있도록 설계함 RDB로 할지 JPA로 할지 등 정해지면 바꿔 끼울 것 회원 도메인과 레포지터리 만들기 shift + F6 : 파일 이름 변경 Optional이란? Java 8에 포함된 기능 id로 찾지 못한 경우 null로 반환 하는 대신 Optional으로 감싸서 반환 Optional.ofNullable()로 감싸 반환하면 클라이언트에서 대응..

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

    스프링에서 제공하는 것 정적 콘텐츠 (https://docs.spring.io/spring-boot/docs/2.6.0-SNAPSHOT/reference/html/web.html#web ) MVC와 템플릿 엔진 API 정적 콘텐츠 사용원리 웹 브라우저 -> 톰캣 -> 1. 스프링 컨테이너에서 컨트롤러 있는지? -> 2. resources/static/ 에 있는지 MVC view: 보여주는 것 담당 controller: 비즈니스 로직처리 model: 로직관련 저장 thymeleaf: 템플릿 엔진. html을 변경함 사용원리 웹브라우저 -> 톰캣 -> 컨트롤러 -> ViewResolver -> 변환된 html 웹브라우저로 API 모델, 뷰 이런거 없음 그냥 리턴값 그대로 넘어감 @ResponseBody 붙여..

    [입문] 프로젝트 환경설정

    프로젝트 생성 1. java 11버전을 다운받는다 2. 환경변수 설정해준다 (JAVA_HOME, CLASSPATH, PATH) 3. intellij 학생라이센스로 다운받기 4. Spring Initializr 에서 프로젝트 설정 (여기선 thymleft랑 web 디펜던시 추가) 라이브러리 요새는 라이브러리 빌드해서 웹서버에 올리면 끝이다 임베디드라고한다 System.out.println() ㄴㄴ 로그로 남겨야 에러를 따로 볼 수 있음 slf4j + logback 조합 많이 써서 스프링부트에 포함됨 View 환경설정 웹 브라우저 -> 톰캣 내장 서버 -> 스프링 컨테이너(모델 리턴) -> View Resolver -> ~.html 변환 후 브라우저에 반환 빌드하고 실행하기 윈도우는 꼬옥 gradlew bu..