본문 바로가기

Spring/개념11

[스프링입문] CH04. 스프링 빈과 의존관계 1. 스프링 빈 등록하는 2가지 방법 1.1 컴포넌트 스캔과 자동 의존관계 설정 목표 - 회원 컨트롤러가 회원 서비스와 회원 리포지토리를 사용할 수 있게 의존관계 준비 컴포넌트 스캔 원리 @Component 애노테이션이 있으면 스프링 빈으로 자동 등록 @Controller 컨트롤러가 스프링 빈으로 자동 등록된 이유도 컴포넌트 스캔 @Component를 포함하는 애노테이션도 스프링 빈으로 자동 등록 - @Controller - @Service - @Repository ⇒ @controller, @Service, @Repository → 스프링 빈에 자동 등록 @Autowired - 하나만 등록 가능한 스프링 컨테이너에 등록한 후 공유 (싱글톤) - 생성자에 사용하면 객체 생성 시점에 스프링 컨테이너에서 해.. 2021. 8. 10.
[스프링입문] CH03. 회원 관리 예제 - 백엔드 개발 1. 회원 관리 비지니스 요구사항 정리 비지니스 요구사항 - 데이터 : 회원ID, 회원이름 / 기능 : 회원 등록, 회원 조회 - 가정 : DB 선정X → 인터페이스로 구현하여 변경가능하도록 설계 (일반적인) 웹 애플리케이션 계층 구조 - 컨트롤러 : 웹 MVC의 컨트롤러 역할 - 서비스 : 비즈니스 도메인 객체를 가지고 핵심 비즈니스 동작 로직 구현 ex) 회원 중복가입 방지 등등 - 도메인 : 비즈니스 도메인 객체 ex) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨 - 리포지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 2. 회원 도메인과 리포지토리 만들기 Optional 클래스 Stream(스트림) clear() : 모든 데이터 삭제 public class Mem.. 2021. 8. 9.
[스프링입문] CH02. 스프링 웹 개발 기초 1. 정적 컨텐츠 정의 - 서버에서 하는 것 없이 파일을 그대로 웹브라우저에 내려주는 것 정적 컨텐츠 동작 - resource/static/fileName.html에 파일을 넣어두고, 포트번호/fileName.html을 검색하면 해당 html이 동작 - [ 동작 순서 ] 1) 웹 브라우저에서 localhost:포트번호/fileName.html 검색하면, 내장 톰켓 서버가 요청받음 2) 내장 톰캣 서버가 해당 html를 스프링에 넘기면, 컨트롤러에서 fileName이 존재하는지 확인 3) fileName에 해당하는 컨트롤러가 없다면, resource/static/fileName.html을 찾아 해당 html 반환 # src/main/resources/static/hello-static.html 정적 컨텐츠.. 2021. 8. 3.
[스프링입문] CH00. JDK 설치 및 프로젝트 생성 1. java jdk 버전 11 설치 http://www.oracle.com/java/technologies/javase-jdk11-downloads.html 저장 위치: C:\Program Files\Java\jdk-11.0.11 2. 환경변수 설정 시스템 환경 변수 편집 - 환경변수 - 사용자 변수 - Path 클릭 후 편집 - 새로 만들기 - 아래처럼 입력 시스템 환경 변수 편집 - 환경변수 - 시스템 변수 - 새로 만들기 3. 버전 확인 cmd 창에서 java -version 확인 4. 프로젝트 생성 5. 프로젝트 JDK 설정 File - setting - Buid, Execution, Deployment - Build Tools - Gradle 에서 빨간 부분 수정 - 빨간색 박스의 Build .. 2021. 7. 8.
[스프링입문] CH01. 프로젝트 환경설정 1. view 환경설정 Welcome Page(정적 파일 동작) - resources: static/index.html에 올려두면 Welcome page 기능 제공 ⇒ 기본 페이지 작성 Hello hello ​ thymeleaf 템플릿 엔진 동작 - controller에서 리턴 값으로 문자(viewName) 반환 → 뷰 리졸버(viewResolver)가 resources: templates/ +{ViewName}+.html을 찾아서 처리 - model에서 넘긴 key 값은 해당 key 값의 value 값으로 대입되어 처리 됨 2. 콘솔로 빌드하는 법 mac 사용자 1. cd 실행파일 위치 2. ./gradlew build 3. cd build/libs 4. java -jar 실행파일이름.jar windo.. 2021. 6. 26.