목록분류 전체보기 (165)
개발 기록
JAVA 구동 방식 -자바는 소스파일을 컴파일하면 실행가능한 파일을 생성(byte code) -> 이 파일을 실행해 주는 엔진이 JVM -> JVM은 구동될 OS리소스에 맞게 파일을 재 컴파일 (OS에 독립적으로 실행 가능) 자료형 -기본자료형 : 컴파일러에서 기본적으로 제공해주는 자료형 정수(short, int, long), 실수(float,double), 문자(char), 불(boolean) -사용자정의자료형 : 객체 자료형 (object) ex. DTO, VO, string -생각보다 기초부터 시작하지만.. 난 아직 객체지향도 제대로 이해하지 못하고 있다고 생각해서.. 이번 기회에 기초를 다져보자..
기록은 어렵다.. 간단하게라도 정리 강의 수강 목적 : 실무에서는 아무래도 기존 코드에 맞춰 개발을 하다보니 뭐가뭔지 생각하는게 덜 해졌다고 느껴졌다. 예외처리도 그 중 하나인데 다른 메소드에서 쓰이는 걸 그냥 그대로 가져와 쓰다가 어느 날은 알고는 써야지 하고 생각이 들었다. 그래서 예외처리에 관한 강의를 찾다가 수강 ! - 강의는 JDBC부터 데이터 소스 트랜젝션 예외 많지만 나는 예외처리때문에 들었으므로 정리도 그 부분만 하겠다! - 예외 기본 문법이라는 내용도 나는 모르고 있어서 듣길 잘 했다고 생각이 들었다. 내용 정리 예외 계층 체크 예외와 언체크 예외 차이는 컴파일러의 체크 유무 + 컴파일러란 - 소스를 컴퓨터 언어인 기계어로 번역하는 작업(컴파일)을 하는 프로그램 + 빌드 = 컴파일 + 링..
1. Introduction to Operation Systems 운영체제 - 하드웨어 바로 위에 설치되어 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 - 좁은 의미 : 커널 (핵심 부분 - 메모리에 상주하는 부분) - 넓은 의미 : 커널 + 각종 주변 시스템 유틸리티를 포함 목적 - 효율적 자원 관리 운영체제의 예 - 유닉스 - MS Windows 2. System Structure & Program Execution - cpu는 매 순간 메모리에서 이느트럭션 (기계어)를 읽어 실행. -하드 디스크는 인,아웃풋 디바이스 역할도 한다. 디바이스 컨트롤러는 작은 cpu역할. 각 디바이스를 관리 디바이스 컨트롤러의 작업 공간 -> 로컬 버퍼 cpu안에는 메모리보다 더 빠르면서 정보 저장이 가능..
com.amazonaws.SdkClientException: Failed to connect to service endpoint: ... Caused by: java.net.SocketException: Network is unreachable: connect ... 로컬에서 프로젝트를 실행시킬때 항상 뜨는 에러였는데 애플리케이션 동작에 아무 문제가 없어 그냥 넘어갔던 에러다 이제와서 뭘까 생각이 들어 찾아봤다.. 결론은.. spring-cloud-starter-aws를 이용한 프로젝트를 EC2 인스턴스가 아닌 다른곳에서 애플리케이션을 실행시 뜨는 에러다 내가 이해한 내용.. EC2ResourceFetcher doReadResource 메서드안의 변수인 URI endpoint와 연결되지 않아 예외가 발생..
출처 유튜브 널널한 개발자 TV Stream : 유저모드 애플리케이션 프로세스 수준 (짧은 말로 소켓 수준) 에서 사용되는 데이터 단위 끝을 알 수 없이 일렬로 쭉 늘어진 데이터 stream을 네트워크로 보낼 때 분해가 일어남 (segmentation) -> 잘린 조각을 segment라고 함 분해시 일정길이로 자르는데 일정길이의 최대크기는 - MSS ; Maximum Segment Size MSS는 packet의 크기에 따라 정해짐 segment : TCP에서 다루는 데이터 단위 packet : IP에서 다루는 데이터 단위. segment를 인터넷 환경에서 전송 가능한 형태로 만든 것 (택배 포장처럼) packet의 최대크기는 1500bytes (MTU ; Maximum Transmission Unit)..
DFS 중복순열을 만드는 알고리즘이였는데 만들어진 배열 원소의 합이 주어진 특정 수와 똑같을 때 그 배열의 최소 사이즈를 구하는 것이였다. import java.util.Scanner; public class Main { static int n, m; //제일 큰수로 해야됨 ( 최소 개수를 구하는 것이기 때문에 ) static int answer = Integer.MAX_VALUE; static int[] arr; //L-동전 갯수 public void DFS(int L, int sum) { if (sum > m) return; if (sum == m) { answer = Math.min(L, answer); } else { for (int i = 0; i < n; i++) { DFS(L + 1, sum..
DRF - ViewSet으로 API를 구성중에 있다 class SoftDeleteModel(models.Model): is_deleted = models.BooleanField(default=False) def delete(self): self.is_deleted = True self.save() def restore(self): self.is_deleted = False self.save() class Meta: abstract = True 처음에는 def soft_delete(self): 로 했는데 delete method 보내면 바로 삭제가 되어 적용이 안되었다 ( 내 경우 ) SoftDeleteModel을 생성한 다음 softdelete를 적용할 모델에게 넣어준다 여기 클래스에는 is_delete..
simple-jwt에 블랙리스트라는 기능이 있어서 사용해보려고 한다 사용 이유 - 로그 아웃시 로컬 저장소에 저장한 토큰을 삭제하고 서버에서 블랙리스트에 넣어 무효화 - localStorage에서 액세스 토큰과 새로 고침 토큰을 모두 제거할 수 있더라도 refresh_token이 도난당했다면 다른 클라이언트가 해당 토큰을 무기한 계속 사용할 수 있다. 이를 방지하기 위해 클라이언트가 현재 refresh_token 또는 현재 사용자에게 할당된 모든 refresh_token을 무효화 가능 공식문서 https://django-rest-framework-simplejwt.readthedocs.io/en/latest/blacklist_app.html Blacklist app — Simple JWT 5.1.0.po..