개발/스프링 입문

    (스프링 입문) 7. AOP

    이 글은 김영한 님의 스프링 입문 강좌 수강 후에 정리한 글입니다. (https://www.inflearn.com/course/스프링-입문-스프링부트/dashboard) AOP ● AOP가 필요한 상황 지금까지 구현한 회원 가입, 회원 조회 기능들의 소요 시간을 체크해보려고 한다. MemberService 회원 조회 시간 측정 추가 package hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemberRepository; import org.springframework.transaction.annotation.Transactional; import java.util...

    (스프링 입문) 6. 스프링 DB 접근 기술

    이 글은 김영한 님의 스프링 입문 강좌 수강 후에 정리한 글입니다. (https://www.inflearn.com/course/스프링-입문-스프링부트/dashboard) 스프링 DB 접근 기술 ● H2 데이터베이스 설치 H2 DB는 개발 및 테스트 용도로 사용하며, 가볍고 편리한 DB이다. 웹 화면도 제공한다. 다운로드 : https://www.h2database.com H2 Database Engine (redirect) H2 Database Engine Welcome to H2, the free SQL database. The main feature of H2 are: It is free to use for everybody, source code is included Written in Java, ..

    (스프링 입문) 5. 회원 관리 예제 (웹 MVC 개발)

    이 글은 김영한 님의 스프링 입문 강좌 수강 후에 정리한 글입니다. (https://www.inflearn.com/course/스프링-입문-스프링부트/dashboard) 회원 관리 예제 - 웹 MVC 개발 ● 회원 웹 기능 - 홈 화면 추가 1. 홈 컨트롤러 추가 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"; } } @Ge..

    (스프링 입문) 4. 스프링 빈과 의존관계

    이 글은 김영한 님의 스프링 입문 강좌 수강 후에 정리한 글입니다. (https://www.inflearn.com/course/스프링-입문-스프링부트/dashboard) 스프링 빈과 의존관계 회원 컨트롤러가 회원 서비스와 회원 리포지토리를 사용할 수 있게 의존관계를 추가하여야 한다. package hello.hellospring.controller; import hello.hellospring.service.MemberService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @Controller public class MemberControlle..

    (스프링 입문) 3. 회원 관리 예제

    이 글은 김영한 님의 스프링 입문 강좌 수강 후에 정리한 글입니다. (https://www.inflearn.com/course/스프링-입문-스프링부트/dashboard) 회원관리 예제 ● 비즈니스 요구 사항 데이터 : 회원 ID, 회원 이름 기능 : 회원 등록, 조회 DB : 아직 데이터 저장소가 선정되지 않음 (우선 인터페이스로 구현 클래스를 변경할 수 있도록 설계) ● 일반적인 웹 애플리케이션 계층 구조 컨트롤러 : 웹 MVC의 컨트롤러 역할 서비스 : 핵심 비즈니스 로직 구현 리포지토리 : DB에 접근, 도메인 객체를 DB에 저장하고 관리 도메인 : 비즈니스 도메인 객체 (ex. 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨) ● 회원 객체 생성 (도메인) package hello.h..

    (스프링 입문) 2. 스프링 웹 개발 기초

    이 글은 김영한 님의 스프링 입문 강좌 수강 후에 정리한 글입니다. (https://www.inflearn.com/course/스프링-입문-스프링부트/dashboard) 1. 정적 컨텐츠 정적 컨텐츠 입니다. 웹 브라우저에서 특정 html을 요청하면 (ex. hello.html) 서버는 스프링 컨테이너에 등록된 hello 관련 컨트롤러를 찾는다. 만약 컨트롤러가 존재하지 않는다면 이때 서버는 resource:static 이하에 위치한 hello-static.html을 찾는다. 그 후 브라우저는 서버가 찾아준 resource:static/hello-static.html을 보여준다. 이렇게 html 파일을 그대로 보여주는 것을 정적 컨텐츠라고 한다. 2. MVC와 템플릿 엔진 ● MVC MVC (모델-뷰-컨..

    (스프링 입문) 1. 프로젝트 환경 설정

    이 글은 김영한 님의 스프링 입문 강좌 수강 후에 정리한 글입니다. (https://www.inflearn.com/course/스프링-입문-스프링부트/dashboard) View 환경설정 import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; @Controller public class HelloController { @GetMapping("hello") public String hello(Model model) { model.addAttribute("data", "hello!!"); return "h..