CoNet 프로젝트 백엔드 파트 기록 OverView AWS S3 bucket 설정 AWS IAM user 생성 Spring Project Setting (여기까지 이전 포스트) 이미지 업로드 및 객체 url 가져오기 이미지 삭제 API Test 이전 포스트 [AWS/Spring] AWS S3 버킷 생성 및 연동 CoNet 프로젝트 백엔드 파트 기록 AWS S3 (Simple Storage Service) OverView AWS S3 bucket 설정 AWS IAM user 생성 Spring Project Setting 이미지 업로드 및 url 가져오기 (여기부터 다음 포스트) 이미지 삭제 API Test AWS 1. S3 roel-yomojomo.tistory.com 이미지 업로드 Spring 프로젝트..
CS 요모조모
매번 AWS에 로그인하기 귀찮아서 DataGrip에 S3에 연동.. 젯브레인 만세 Plugin > Big Data Tools install 우측 Big Data Tools에서 AWS S3 선택 연결 Name: connection 이름 - 임의 설정 AWS S3 Area: AWS Global Custom roots: bucket 이름 Authentication type: Explicit access key and secret key IAM 계정에서 발급 받은 access/secret key AWS S3 버킷 및 IAM 사용자 생성에 대한 내용은 아래 포스트에서 확인할 수 있습니다. [AWS/Spring] AWS S3 버킷 생성 및 연동 CoNet 프로젝트 백엔드 파트 기록 AWS S3 (Simple Sto..
CoNet 프로젝트 백엔드 파트 기록 AWS S3 (Simple Storage Service)OverViewAWS S3 bucket 설정AWS IAM user 생성Spring Project Setting이미지 업로드 및 url 가져오기 (여기부터 다음 포스트)이미지 삭제API Test AWS1. S3 Bucket 생성1) 버킷 이름 & AWS 리전 설정이름: 사용자 정의리전: 아시아 태평양(서울) ap-northeast-2 2) 퍼블릭 액세스 허용 (차단 해제)차단을 해제하지 않으면 업로드한 파일에 접근 시 403 Access Denied 에러 남 3) 객체 소유권 - ACL 활성화됨 선택‘ACL이 복원된다는 것을 확인합니다.’ 까지 선택 Trouble Shooting- 비활성화하면 프로젝트에서 버킷에 ..
칼럼의 default 값을 가져오는 방법 Query select COLUMN_DEFAULT from information_schema.'COLUMNS' C where table_schema='스키마 명' and table_name='테이블 명' and column_name='칼럼 명'; COLUMN_DEFAULT, ‘COLUMNS’ C 부분 대문자로 작성할 것 소문자로 쓰면 쿼리 오류가 나는 것을 볼 수 있었음 예시 schema: test table: user column: name default: “이름을 입력하세요.” select COLUMN_DEFAULT from information_schema.'COLUMNS' C where table_schema='test' and table_name='use..
본 포스트는 이펙티브 자바 ‘Ch 2, Item 1 생성자 대신 정적 팩토리 메서드를 고려하라’ 참고하여 작성한 글입니다. 헤드퍼스트 디자인패턴 책의 ch4 팩토리 패턴에서는 '정적 팩토리 메서드'를 언급한다. 그 내용을 보충하기 위하여 자료를 찾아보던 중, 이펙티브 자바에서 정적 팩토리를 다룬다는 것을 알게 되어 참고하였다. 팩토리 패턴에 대한 내용은 아래 포스트로 확인할 수 있습니다. [Design Pattern] 팩토리 메서드 패턴 (Factory Method Pattern) 본 포스트는 헤드퍼스트 디자인패턴을 읽고 정리한 글입니다. Ch4 팩토리 패턴 OverView 팩터리 패턴은 불필요한 의존성 없애 결합 문제를 해결한다. 모든 팩토리 패턴은 객체 생성을 캡슐화한다. roel-yomojomo.t..
본 포스트는 헤드퍼스트 디자인패턴을 읽고 정리한 글입니다. Ch4 팩토리 패턴 OverView 팩터리 패턴은 불필요한 의존성 없애 결합 문제를 해결한다. 모든 팩토리 패턴은 객체 생성을 캡슐화한다. 구상 클래스 의존성을 줄인다. → 네 번째 디자인 원칙, 느슨한 결합 구상 클래스가 아닌 추상 클래스와 인터페이스에 맞추어 코딩할 수 있다. 두 번째 디자인 원칙, 인터페이스에 맞추어 코딩하라. Question: 피자 가게 구축 메뉴를 유동적으로 추가/삭제 할 수 있는 피자 가게를 만들어야 한다. 단순 해결 입력 받은 피자 종류에 따라 피자 객체 인스턴스를 생성한다. public class PizzaStore { public Pizza orderPizza(String type) { Pizza pizza; if..
본 포스트는 헤드퍼스트 디자인패턴을 읽고 정리한 글입니다. Ch3 데코레이터 패턴 Question: 커피 주문 시스템 구축 기존 주문 시스템 클래스를 개선하여 다양한 음료를 모두 포괄할 수 있는 주문 시스템을 만들어야 한다. 기존 주문 시스템 cost: 음료 가격 description: 음료 설명 요구사항 옵션이 존재한다. 샷 추가, 우유, 휘핑 크림 등을 선택할 수 있다. 옵션을 추가할 때마다 가격도 추가된다. 임시방편 문제 해결 1 각 옵션 유무에 따라 클래스를 모두 생성하고, cost 메서드에서 최종 가격을 계산한다. Problem 특정 옵션의 가격이 인상되거나, 옵션 자체가 추가되면 모든 클래스를 일일이 확인 및 수정해야 한다. 지금까지 배운 4가지 디자인 원칙 중 어떤 것을 위반하고 있을까? 디..
본 포스트는 이것이 자바다을 읽고 정리한 글입니다. 람다식익명 함수(anonymous function)를 생성하기 위한 식으로 함수 지향 언어에 가깝다. 람다식의 형태는 매개 변수를 가진 코드 블럭이지만, 런타임 시에는 익명 구현 객체를 생성한다. 장점코드가 간결해진다.컬렉션의 요소를 필터링하거나 매핑하여, 원하는 결과를 쉽게 집계할 수 있다. 기본 문법(Type parameter, ...) -> { execute; ... } 타겟 타입 & 함수적 인터페이스Interface variable = lambda;람다식은 인터페이스 변수에 대입된다. = 람다식은 인터페이스의 익명 구현 객체를 생성한다.인터페이스는 객체화하기 위하여 구현 클래스가 필요하다. 타겟 타입람다식이 대입될 인터페이스이다. 타겟 타입에 따..