전체 글 (25) 썸네일형 리스트형 2023/02/21 TIL 객체 지향 프로그래밍과 REST API Q1. 객체지향 프로그래밍(OOP)에 대해 설명해주세요. 알고있는 원칙이나 키워드를 언급해주세요 어떤 제품을 만들 때 부품을 먼저 개발하고 이 부품들을 하나씩 조립해서 제품을 완성하듯이 소프트웨어를 개발할 때에도 부품에 해당하는 객체를 먼저 만들고, 객체를 하나씩 조립해서 완성된 프로그램을 만드는 기법을 말한다. SOLID 원칙을 철저히 지키면 시간이 지나도 변경이 용이하고, 유지보수와 확장이 쉬운 소프트웨어를 개발하는데 도움이 되는 것으로 알려져있다. ① SRP(단일 책임 원칙) : 하나의 모듈이 여러 대상 또는 액터들에 대해 책임을 가져서는 안되고, 오직 하나의 액터에 대해서만 책임을 져야 한다. 예를 들어, 회원가입시 비밀번호를 암호화하여 저장하는 로직이 있다고 가정했을 때 사용자의 역할(Role).. AmazonS3Exception: Access Denied (Service: Amazon S3; Status Code: 403; ... Proxy: null 에러 해결 ⛔ 문제 상황 글삭제 API 구현 후 AWS S3에 업로드 된 파일 삭제시 해당 에러 발생함 AWS에서 IAM(사용자)을 다시 만들고 bucket도 재생성하니 글삭제 API 구현 성공함 yml 파일에 새로 발급 받은 Access-key, Secret-key을 추가하고 Commit 시 다시 에러 발생함 ❓문제 원인 gitignore에 yml 파일이 적용되지 않아 Github에 Access-key 및 Secret-key가 그대로 노출되어 아마존에서 S3 권한을 막은 것.. (AWS에서 이메일 날아왔다) cloud: aws: credentials: accessKey: //노출되면 절대 안됨 secretKey: //노출되면 절대 안됨 s3: bucket: alcohol-bucket region: static: .. @Size 어노테이션 적용 안되는 문제 해결 ⛔ 문제 상황 implementation group: 'org.springframework.boot', name: 'spring-boot-starter-validation' 의존성 추가가 되어 있음에도 @Size(min = 1, max = 10) 적용 안됨 ❓문제 원인 Controller 에 @Valid 추가 안되어 있음 ❗해결방안 @Valid 어노테이션 추가함으로 @Size 적용 됨 public PrivateResponseBody createRoom(@RequestBody @Valid RoomRequestDto roomRequestDto) java.lang 패키지의 주요 클래스 keyword : java.lang 패키지에 속한 클래스 1. Object : 모든 클래스의 최상위 부모 클래스 extends 키워드로 다른 클래스를 상속하지 않더라도 암시적으로 java.lang.Object 클래스를 상속하게 됨 즉, 자바의 모든 클래스는 Object의 자식 또는 자손 클래스 1) equals() : 객체와 객체를 비교해주는 메소드 (return : boolean) Object obj1 = new Object(); Object obj2 = new Object(); boolean reult = obj1.equals(obj2); // obj1 == obj2 와 동일 Q. equals() 메소드를 재정의하여 사용하는 이유는? A. 두 객체의 필드값이 같은 객체인지 비교하기 위해 2) hash.. Week4 WIL : ORM, SQL, MVC ORM 이란? Object Relational Mapping (객체-관계-매핑)의 약자 프로그래밍 언어의 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 도구 객체 지향 프로그래밍은 클래스를 사용하고, 관계형 데이터베이스는 테이블을 사용 MVC 패턴에서 모델(Model)을 기술하는 도구 ORM을 통해 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여 객체 모델과 관계형 모델 간에 불일치를 해결 SQL 이란? Structured Query Language (구조적 질의 언어)의 약자 관계형 데이터베이스 시스템(RDBMS) 에서 자료를 관리 및 처리하기 위해 설계된 언어 SQL 문법의 종류 DDL (데이터 정의 언어) : 각 릴레이션(DB 테이블)을 정의하기 위해 사용 (ex. CREAT.. 이전 1 2 3 4 5 다음