반응형

Development/Spring 7

[Spring] 스프링 입문 - 강의 정리 7

본 게시물은 김영한님의 “스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술” 강의를 바탕으로 작성했습니다.AOPAOP가 필요한 상황AOP가 필요한 상황모든 메소드의 호출 시간을 측정하고 싶을 때공통 관심 사항(cross-cutting concern) vs 핵심 관심 사항(core concern)회원 가입 시간, 회원 조회 시간을 측정하고 싶을 때이러한 상황에서 시간을 측정하는 로직을 아래 그림과 같이 각각 작성해야 합니다.MemberService 회원 조회 시간 측정...@Transactionalpublic class MemberService { ... public Long join(Member member) { long start = System.curre..

Development/Spring 2026.02.08

[Spring] 스프링 입문 - 강의 정리 6

본 게시물은 김영한님의 “스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술” 강의를 바탕으로 작성했습니다.스프링 DB 접근 기술H2 데이터베이스 설치H2 데이터베이스 설치 및 실행H2 데이터베이스를 설치해보겠습니다. https://h2database.com/html/main.html에 접속해서 최신 버전을 All Platforms로 다운로드합니다.압축을 풀고 Terminal을 켜서 다음 명령어를 순서대로 입력합니다. 저는 Downloads 폴더에서 압축을 풀었습니다.cd downloadscd h2cd binls -arlthchmod 755 h2.sh./h2.shls -arlth 명령어를 입력하면 모든 파일들을 볼 수 있습니다. h2.sh라는 파일이 있는데 MacOS 기준으로 실행 ..

Development/Spring 2026.02.08

[Spring] 스프링 입문 - 강의 정리 5

본 게시물은 김영한님의 “스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술” 강의를 바탕으로 작성했습니다.회원 관리 예제 - 웹 MVC 개발회원 웹 기능 - 홈 화면 추가홈 컨트롤러 추가홈 화면으로 연결해주는 컨트롤러를 만듭니다.package hello.hello_spring.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;@Controllerpublic class HomeController { @GetMapping("/") public String home() { return "home"; ..

Development/Spring 2026.02.08

[Spring] 스프링 입문 - 강의 정리 4

본 게시물은 김영한님의 “스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술” 강의를 바탕으로 작성했습니다.스프링 빈과 의존관계컴포넌트 스캔과 자동 의존관계 설정회원 컨트롤러 생성의존관계를 만들기 전에 회원 컨트롤러를 생성합니다. src/main/java/hello.hello_spring/controller 폴더에 MemberController 클래스를 생성하고 아래와 같이 작성합니다.package hello.hello_spring.controller;import hello.hello_spring.service.MemberService;import org.springframework.beans.factory.annotation.Autowired;import org.springfram..

Development/Spring 2026.02.08

[Spring] 스프링 입문 - 강의 정리 3

본 게시물은 김영한님의 “스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술” 강의를 바탕으로 작성했습니다.회원 관리 예제 - 백엔드 개발비즈니스 요구사항 정리회원 관리 예제 프로젝트를 만들기 위해서 몇 가지 요구사항을 먼저 정리해봅시다. 각 회원은 ID와 이름이라는 데이터를 갖고 있습니다. 회원을 등록하고 조회하는 기능도 필요합니다. 그리고 아직 데이터를 저장할 데이터베이스가 선정되지 않았다는 가상 시나리오를 바탕으로 진행합니다.일반적인 웹 애플리케이션 계층 구조일반적인 웹 애플리케이션 계층 구조는 컨트롤러, 서비스, 리포지토리, 도메인, DB로 구성되어 있다.컨트롤러는 웹 MVC를 컨트롤러 역할과 API를 만드는 컨트롤러 역할을 합니다.서비스에서는 핵심 비즈니스 로직을 구현합니다..

Development/Spring 2026.02.08

[Spring] 스프링 입문 - 강의 정리 2

본 게시물은 김영한님의 “스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술” 강의를 바탕으로 작성했습니다.스프링 웹 개발 기초정적 컨텐츠정적 컨텐츠는 src/main/resources/static 폴더에 html 코드를 작성하면 페이지에서 보여줍니다.정적 컨텐츠 실행위 폴더에 hello-static.html 파일을 생성하고 아래와 같이 작성합니다.정적 컨텐츠 입니다.스프링 부트를 재실행하고 http://localhost:8080/hello-static.html 접속하면 아래 사진과 같이 뜨는 것을 확인할 수 있습니다.static 폴더에는 정적인 컨텐츠만 가능하고 코드를 통한 변화는 반영할 수 없습니다.정적 컨텐츠 원리웹 브라우저에서 접속하면 내장 톰캣 서버가 요청을 받습니다.스프링..

Development/Spring 2026.02.08

[Spring] 스프링 입문 - 강의 정리 1

본 게시물은 김영한님의 “스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술” 강의를 바탕으로 작성했습니다.프로젝트 환경 설정프로젝트 생성프로젝트를 생성하기에 앞서 Java 17 이상, IntelliJ 또는 Eclipse가 설치되어 있어야 합니다.스프링 부트 스타터스프링 부트 스타터는 스프링 부트 기반 프로젝트를 만들어 주는 사이트입니다.https://start.spring.io 로 이동하면 다음과 같은 페이지가 나옵니다. 스프링 부트 스타터 설정다음 사진과 같이 설정하고 [GENERATE]를 누르면 압축 파일이 다운로드 됩니다.Gradle을 제일 많이 사용합니다.Spring Boot 버전은 3.x.x 버전을 사용합니다. SNAPSHOT과 M2 같은 미정식 버전을 제외한 최신 버전인..

Development/Spring 2026.02.08
반응형