Spring Boot (6) 썸네일형 리스트형 [Spring Boot] 스프링 빈과 의존관계 스프링 빈과 의존관계 이제 회원가입 화면을 만든다고 해보자. 회원가입 화면을 구현하려면 Controller가 필요한데 Controller는 Service에 만들어둔 회원가입 기능을 통해서 동작되도록 해야한다. 그러려면 Conroller와 Service를 연결시켜 줘야하는데 이걸 스프링으로 구현할 수 있다. package com.example.hellospring.controller; import com.example.hellospring.service.MemberService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @Controller pub.. MVC 패턴이란? MVC 패턴 MVC 패턴은 디자인 패턴 중 하나입니다. 디자인 패턴이란 개발 중에 발생했던 문제점들을 정리해서 상황에 따라 간편하게 적용하여 쓸 수 있도록 만들어 놓은 규약을 말합니다. MVC는 Model, View, Controller 의 약자입니다. 하나의 애플리케이션을 구성할 때 그 구성 요소를 세 가지의 역할로 구분한 패턴입니다. 위의 그림처럼 사용자가 Controller 를 조작하면 Controller 는 Model 을 통해서 데이터를 가져오고 그 정보를 바탕으로 시각적인 표현을 담당하는 View 를 제어해서 사용자에게 전달합니다. 위 그림은 사용사에 의한 로직을 설명하기 위함이고 보다 더 MVC 패턴과 어울리는 그림은 아래와 같습니다. Controller 가 View 에도 영향을 미치는 부분이.. [JPA] JPA 기본 사용 문법 @Entity @Entity 어노테이션은 데이터베이스의 테이블과 일대일로 매칭 되는 객체 단위이며 Entity 객체의 인스턴스 하나가 테이블에서 하나의 레코드 값을 의미합니다. 그래서 객체의 인스턴스를 구분하기 위한 유일한 키값을 가지는데 이것은 테이블 상의 Primary Key 와 같은 의미를 가지며 @Id 어노테이션으로 표기됩니다. 이때 명시적으로 @Entity 의 name 속성을 이용해 데이터베이스 상의 실제 테이블 명칭을 지정하지 않는다면 Entity 클래스의 이름 그대로 CamelCase 를 유지한 채 테이블이 생성되기 때문에 테이블 이름을 명시적으로 작성하는 것이 관례입니다. 왜냐하면 데이터베이스 상에서는 UnderScore 가 원칙이기 때문입니다. @Entity public class Org.. [SpringBoot] 애플리케이션 재시작없이 수정 반영하는 방법 : Devtools 스프링부트에서 애플리케이션 재시작없이 html 수정 반영하는 방법 html 에서 띄어쓰기 하나만 고쳐도 재시작 해야하기 때문에 여간 불편한게 아니다. 재시작하는 시간이 꽤 걸리기 때문에 작은 수정 하나에 드는 비용이 굉장히 크게 느껴진다. 이러한 불편함을 해결해 줄 Devtool 설정 방법을 정리한다. devtools는 Spring boot에서 제공하는 개발 편의를 위한 모듈이다. Devtools 설정 방법 (gradle) 1. Dependency에 devtools를 추가한다. 2. 재시작 없이 Recompile 또는 Ctrl+Shift+F9 로 수정한 파일만 리컴파일한다. [SpringBoot] Contoller와 View의 데이터 전달 : Thymeleaf 템플릿 1. Contoller Contoller 에서 Model 을 이용하여 데이터를 View 로 전달한다. addAttribute 메서드를 이용하는 데, 첫 번째 파라미터는 변수명, 두 번째 파라미터는 값을 나타낸다. return 하는 값은 View 의 파일명이다. @Controller public class HelloController { @GetMapping("hello") public String hello(Model model) { model.addAttribute("data", "hello!!!"); return "hello"; } } 2. hello.html 안녕하세요, 손님 Thyemleaf 템플릿 엔진을 이용하기 위해선 xml 네임 스페이스를 명시해야 한다. html 태그를 열고 xmlns:th.. [Spring Boot] 프로젝트 생성과 초기 설정 방법 Spring Boot 프로젝트 생성하기 먼저 spring boot stater 를 이용해 초기 프로젝트를 생성한다. https://start.spring.io/ 위 주소로 들어가면 스프링 빌드 관리 도구(maven/grandle)를 선택하고 Spring Boot 버전과 Java 버전, 여러가지 라이브러리를 추가하여 새로운 프로젝트를 빠르게 만들 수 있다. 과거에는 이러한 시스템이 없어서 하나하나 설정하는 데만 굉장히 오래 걸렸다고 한다. 위 사진처럼 설정해 주었고 [GENERATE] 를 하면 프로젝트가 .zip 형식으로 다운로드 된다. Dependencies - Spring Web : Spring MVA, Apach Tomcat 등 웹 프로젝트를 하려면 반드시 추가해야 하는 라이브러리 - Thyemlea.. 이전 1 다음