반응형

Framework/Spring Boot 69

스프링 빈과 의존관계

스프링 빈과 의존관계 컴포넌트 스캔과 자동 의존관계 설정 자바 코드로 직접 스프링 빈 등록 1. 컴포넌트 스캔과 자동 의존관계 설정 @Component @Controller @Service @Repository 애노테이션이 붙으면 스프링 빈으로 자동 등록 생성자에 @Autowired가 있으면 객체 생성 시점에 스프링 컨테이너에서 해당 스프링 빈을 찾아서 주입 객체 의존관계를 외부에서 넣어주는 것을 DI(Dependency Injection) DI에는 필드, 주입 setter 주입, 생성자 주입 이렇게 3가지가 있음. 의존관계가 실행중에 동적으로 변하는 경우는 없으므로 생성자 주입을 권장!!!!! 실무에서는 주로 정형화된 컨트롤러, 서비스, 리포지토리 같은 코드는 컴포넌트 스캔을 사용. 그리고 정형화되지 ..

회원 관리 예제 - 백엔드 개발

shift+F6 rename ctrl+Alt+Shift+t refactor하기(그 중 Extract Method를 할 것임) class에 커서 두고 ctrl+shift+t 자동으로 test코드 생성 ctrl+Alt+v asswertThrows를 IllegalStateException e로 바꿀 때 편함 shift+F10 이전 실행 다시 ☆ 비즈니스 요구사항 정리 - 데이터 : 회원ID, 이름 - 기능 : 회원 등록, 조회 - 아직 데이터 저장소가 선정되지 않음(가상의 시나리오) ☆ 일반적인 웹 애플리케이션 계층 구조 컨트롤러 : 웹MVC의 컨트롤러 역할 서비스 : 핵심 비즈니스 로직 구현 리포지트리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장, 관리 도메인 : 비즈니스 도메인 객체 ex) 회원, ..

스프링 웹 개발 기초

1. 정적 컨텐츠 스프링 컨테이너에서 우선적으로 관련 컨트롤러를 찾는다. 없으면 static폴더에 있는 html을 본다. 2. MVC와 템플릿 엔진 Model : 모델은 데이터베이스나 파일과 같은 데이터 소스를 제어한 후에 그 결과를 리턴해줌. View : 화면과 관련. Controller : URL에 따라서 사용자의 요청을 파악한 후 그 요청에 맞는 데이터를 Model에 의뢰하고, 데이터를 View에 반영 @GetMapping("hello-mvc") public String helloMvc(@RequestParam(value="name") String name, Model model) { model.addAttribute("name", name); return "hello-template"; } @Re..

Build

cmd에서 서버를 build하는 과정 ※ intellij에서 서버를 끄고 실행해야 충돌이 안 생김! cmd에서 gradlew.bat를 실행하려면 gradlew 입력 후 엔터 gradlew build하면 build 폴더가 만들어짐. build -> libs에서 .jar파일을 실행한다. java -jar 파일명.jar을 입력하면 서버가 실행됨. gradlew clean 빌드한 파일이 없어짐=build 폴더 삭제됨 gradlew clean build 완전히 삭제 후 build ctrl+c로 서버 종료 출처 : www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EC%9E%85%EB%AC%B8-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A..

View 환경설정

resources -> static에 index.html을 만든다(첫 화면). spring.io의 document에서 정보를 찾을 수 있는 능력 중요! 웹애플리케이션에서 첫번째 진입점이 controller다. controller에서 리턴 값으로 문자를 반환하면 viewResolver가 화면을 찾아서 처리. 스프링 부트 템플릿엔진 기본 viewName 매핑 'resources:templates/'+{ViewName}+'.html' ■ 코드 해석 package start.hellospring.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframew..

프로젝트 생성

Spring Initializr project : Gradle Project Spring Boot : SNAPSHOT 또는 M1 제외 project metadata - group : 보통 회사 이름 많이 들어감 - artifact : 결과물, 프로젝트명같은 것. - name : - description : - package name : ★ dependencies : 어떤 라이브러리를 가져다 쓸 지 결정하는 것 spring web thymeleaf intelij에서 build.gradle을 import로 열기로 가져옴. open as project로 연다. 지금은 gradle이 버전 설정하고 라이브러리를 가져오구나 정도의 이해만 하자 File->Settings->Build, Execution, Deploy..

반응형