01_JPA(Java Persistence API)📍JPA(Java Persistence API)객체와 관계형 데이터베이스의 테이블을 짝지어 데이터를 영구적으로 저장할 수 있도록 정해진 Java 진영의 규칙JPA를 실제 코드로 작성한 가장 유명한 프레임워크가 HibernateHibernate는 내부적으로 JDBC를 사용한다. src/main/resources/application.ymlspring: jpa: hibernate: ddl-auto: none properties: hibernate: show_sql: true format_sql: true dialect: org.hibernate.dialect.MySQL8Dialect🔍 코..
01_Controller, Service, Repository 3단 분리📍 기존 Controller 문제점하나의 Controller에서 3가지 역할을 수행하고 있다. controller/user/UserController@RestControllerpublic class UserController { (중략) @PutMapping("/user") public void updateUser(@RequestBody UserUpdateRequest request) { String readSql = = "SELECT * FROM user WHERE id = ?"; boolean isUserNotExist = jdbcTemplate.query(readSql, (rs..
01_MySQL 명령어📍 DDL(Data Definition Language)CREATE DATABASE데이터베이스 생성하기CREATE DATABASE [데이터베이스 이름]; SHOW데이터베이스 목록 보기테이블 목록 보기SHOW DATABASES;SHOW TABLES; DROP데이터베이스 삭제하기테이블 삭제하기DROP DATABASE [데이터베이스 이름];DROP TABLE [테이블 이름]; USE데이터베이스 안으로 들어가기USE [데이터베이스 이름]; CREATE TABLE테이블 생성하기CREATE TABLE [테이블 이름] ( [필드1 이름] [타입] [부가조건] [필드2 이름] [타입] [부가조건] [필드3 이름] [타입] [부가조건] ... PRIMARY KEY ([..
01_@SpringBootApplication📍 @SpringBootApplication@SpringBootApplication // 스프링을 실행시키기 위해 필요한 다양한 설정들을 모두 자동으로 해줌public class LibraryAppApplication { public static void main(String[] args) { SpringApplication.run(LibraryAppApplication.class, args); // 스프링 애플리케이션을 실행(run) }} 02_네트워크와 API📍 Network데이터를 주고 받는 것(=택배) 📍 IP각 컴퓨터의 고유 주소(=집 주소)256을 넘지 않는 4개의 숫자로 이루어짐ex. 244.66.51.9 📍 D..
01_데이터 조회 과정사용자가 웹 페이지에서 데이터를 조회해 달라고 URL 요청을 보낸다.서버의 controller가 이 요청을 받아 해당 URL에서 찾으려는 데이터 정보를 repository에 전달한다.repository는 정보를 가지고 DB에 데이터 조회를 요청한다.DB는 해당 데이터를 찾아 entity로 반환한다.반환된 entity는 모델을 통해 뷰 템플릿으로 전달된다.최종적으로 결과 뷰 페이지가 사용자 화면에 출력된다. 02_단일 데이터 조회📍 URL 요청받기뷰(View) -> 컨트롤러(Controller) : 사용자가 데이터를 조회해달라고 웹 페이지에서 URL 요청을 보낸다.사용자가 {id}번 게시글을 조회할 때 컨트롤러는 articles/{id}로 URL 요청을 받는다.그리고 이 URL..
01_폼데이터를 DTO로 받기📍 폼 데이터HTML 요소인 태그에 실려 전송되는 데이터웹 브라우저에서 서버에 데이터 전송할 때 사용 action : URL 연결 주소를 적어 그 페이지로 폼 데이터를 보낸다.method : 속성 값으로 get, post 를 설정할 수 있다. src/main/resources/templates/greetings.mustache{{>layouts/header}} 제목 내용 Submit{{>layouts/footer}} 📍 DTO(Data Transfer Object) 태그에 실어 보낸 데이터를 서버의 컨트롤러가 객체에 담아 받는데, 이 객체를 DTO라고 한다.DTO로 받은 데이터는..
01_환경설정JDK : 17IDE : IntelliJSpringBoot : 3.1.0 02_Hello World 출력하기📍 프로젝트 실행src/main/java/com.example.firstproject/FirstprojectApplication.javapackage com.example.firstproject;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplicationpublic class FirstprojectApplication { public static void main(String[] args) ..