인프런 이도원님의 'Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)' 듣고 정리한 내용입니다. Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA) - 인프런 | 강의 Spring framework의 Spring Cloud 제품군을 이용하여 마이크로서비스 애플리케이션을 개발해 보는 과정입니다. Cloud Native Application으로써의 Spring Cloud를 어떻게 사용하는지, 구성을 어떻게 하는지에 대해 www.inflearn.com 1. Users Microservice 개요 API Gateway는 클라이언트로부터 사용자 요청 처리를 해주고 User Service는 Eureka 서비스에 등록이 되어 사용되는 마이크로서비스이다. Users Microser..
이동욱 님의 '스프링부트와 AWS로 혼자 구현하는 웹 서비스' 책 내용을 정리한 것입니다. 4장 머스테치로 화면 구성하기 서버 템플릿 엔진: JSP, Freemarker 클라이언트 템플릿 엔진: React, Vue 머스테치 다양한 언어를 지원하는 템플릿 엔진 (장점) - 다른 템플릿 엔진보다 문법이 심플 - View의 역할과 서버의 역할이 명확하게 분리 - 하나의 문법으로 클라이언트와 서버 모두 사용 가능 index.mustache - 파일 위치는 src/main/resources/templates 스프링부트로 시작하는 웹 서비스 ➡️ 이 머스테치에 URL 매핑 (Controller에서 진행) IndexController.java package com.example.project.web; import o..
이동욱 님의 '스프링부트와 AWS로 혼자 구현하는 웹 서비스' 책 내용을 정리한 것입니다. 3장 스프링 부트에서 JPA로 데이터베이스 다뤄보자 SQL 생성하는 것의 문제점 - 반복적인 작업 - 패러다임 불일치: 객체를 데이터베이스에 저장하니 여러 문제 발생 ⬇️ 객체 지향 프로그래밍 언어와 관계형 데이터베이스 중간에서 패러다임을 일치 시켜주기 위해! JPA 등장 (개발자) 객체 지향적으로 프로그래밍 (JPA) 관계형 DB에 맞게 SQL 대신 생성해서 실행 JPA 인터페이스 (사용하려면 구현체 필요) JPA ← Hibernate ← Spring Data JPA 자바 표준명세서 Spring Data JPA 등장 이유 - 구현체 교체 용이 - 저장소 교체 용이 요구사항 분석 1. 게시판 기능 ▶️ 게시글 조회..
1. REST (Representational State Transfer) 정의 자원을 이름으로 구분하여 해당 자원의 상태를 주고받는 모든 것 구성 - HTTP URL을 통해 자원 명시 ➡️ 자원 Resource - HTTP Method을 통해 ➡️ 행위 Verb - CRUD Operation을 적용 ➡️ 표현 Representation CRUD Operation란? Create: 데이터 생성 - POST Read: 데이터 조회 - GET Update: 데이터 수정 - PUT, PATCH Delete: 데이터 삭제 - DELETE 특징 - 유니폼 인터페이스 - 무상태성 - 캐시 가능 - 자체 표현 구조 - 클라이언트-서버 구조 - 계층형 구조 2. REST API REST 원리를 기반으로 한 API 3...
Comparable과 Comparator은 모두 "인터페이스"이다. Comparable과 Comparator을 사용하려면 인터페이스 내에 선언된 메소드를 반드시 "구현"해야 한다. 1. Comparable - https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html#method.summary java.lang 패키지에 있기 때문에 import 필요 ❌ 구현해야 할 메서드는 compareTo(T o) 2. Comparator - https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html#method.summary java.util 패키지에 존재하기 때문에 import 필요 이 중에..
이동욱 님의 '스프링부트와 AWS로 혼자 구현하는 웹 서비스' 책 내용을 정리한 것입니다. 1장 인텔리제이로 스프링부트 시작하기 build.gradle - ext: 전역변수 사용 - repositories: 각종 의존성들을 어떤 원격 저장소에서 받을지 결정 mavenCentral: 본인이 만든 라이브러리를 업로드 하기 위한 과정과 설정 필요 jcenter: 라이브러리 업로드 수월 - dependencies: 프로젝트 개발에 필요한 의존성들을 선언 io.spring.dependency-management: 스프링부트의 의존성들을 관리해주는 플러그인 .idea 파일은 모든 커밋 대상에서 제외! .gitignore 파일 - 깃에서 특정 파일 혹은 디렉토리를 관리 대상에서 제외할 때 사용 - intellj에서 ..
인프런 김영한 강사님의 '스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술' 듣고 정리한 내용입니다. [무료] 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링 웹 애플리케이션 개발 전반을 빠르게 학습할 수 있습니다., - 강의 소개 | 인프런 www.inflearn.com 섹션 6. 스프링 DB 접근 기술 1. H2 데이터베이스 설치 H2: 개발이나 테스트 용도로 가볍고 편한 DB (웹 화면 제공) Member 테이블 생성 - ddl.sql drop table if exists member CASCADE; create table member ( id bigint generated by defau..
💡 앱 설명 : 키와 몸무게를 입력하여 BMI를 계산해준다. 화면 구성 - Label, TextField, Button 사용 - Stack View로 Object 묶어서 배치 - Constraints로 Object 사이 간격 조정 - Tab Gesture Recognizer로 뷰의 다른 곳을 클릭 시 키보드가 사라지게 하는 설정 화면 기능 ViewController.swift // // ViewController.swift // BMICalc import UIKit class ViewController: UIViewController { @IBOutlet weak var HeightField: UITextField! @IBOutlet weak var WeightField: UITextField! @IBO..
💡 앱 설명: 섭씨 온도를 입력하고 변환 버튼을 클릭 시 화씨 온도가 계산되어 나타난다. 화면 구성 - Label, TextField, Button 사용 - Constraints로 Object 사이 간격 조정 - Tap Gesture Recognizer로 뷰의 다른 곳을 클릭 시 키보드가 사라지게 하는 설정 화면 기능 ViewController.swift // // ViewController.swift // UIBasic import UIKit class ViewController: UIViewController { @IBOutlet weak var label1: UITextField! @IBOutlet weak var label2: UITextField! let numberFormattor:Number..
인프런 김영한 강사님의 '스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술' 듣고 정리한 내용입니다. [무료] 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링 웹 애플리케이션 개발 전반을 빠르게 학습할 수 있습니다., - 강의 소개 | 인프런 www.inflearn.com 섹션 5. 회원 관리 예제 - 웹 MVC 개발 1. 회원 웹 기능 - 홈 화면 추가 HomeController.java package com.example.hellospring.controller; import org.springframework.stereotype.Controller; import org.springframe..