본문 바로가기
728x90

TIL(Today I Learned)25

Synchronous vs Asynchronous와 Blocking vs Non-Blocking 이 개념을 정리하는 이유 😀 Spring 공부 중 WebClient를 사용하기 위해 공부하다가 Non-Blocking 방식으로 WebClient가 동작한다라고 하는 부분이 이해가 잘 되지 않아서 이 개념들을 정리해 봅니다. 이해 해보자 Blocking: 자신의 작업을 수행하다 다른 주체의 작업이 시작되는 경우 제어권을 뺏기는 경우 Non-blocking: 자신의 작업을 수행하다 다른 주체의 작업이 시작되어도 제어권을 뺏기지 않는 경우 Synchronous: 작업을 동시에 시작하거나 동시에 끝이나는 상황, 혹은 끝나는 동시에 시작함을 의미 (결과에 관심이 있는 상태) Asynchronous: 작업의 시작 종료가 일치하지 않으며, 끝나는 동시에 시작하지 않음을 의미 (결과에 관심이 없는 상태) 위와 같이 정.. 2023. 2. 2.
[JAVA] java.util 패키지 정리 이름과 걸맞게 여러 가지 편의 기능을 제공해주는 패키지이다. ArrayList, HashMap, Calendar, Random 등 다양한 패키지를 포함하고 있다. 컬랙션 프레임워크 (Collection Framework) 자료구조 클래스들을 컬랙션 프레임워크라고 부른다. 다수의 객체를 다루기 위한 표준화된 프로그래밍 방식을 의미한다. 컬렉션을 쉽고 편리하게 다룰 수 있는 다양한 인터페이스와 클래스를 제공 java.util 패키지에 포함되어 있으며, JDK1.2부터 제공됨 가장 상위에 Collection interface가 있고, 다음과 같이 상속관계를 표현할 수 있다고 한다. 컬렉션(Collection): 여러 객체(데이터)를 담을 수 있는 자료구조, 다수의 데이터 그룹 프레임워크(Framework): .. 2023. 2. 1.
[Java] java.lang 패키지 정리 자바에서 기본적으로 다양한 패키지를 지원하는데, 그 중에서도 가장 중요한 패키지는 java.lang 패키지이다. java.lang 패키지의 특징 정리 import 하지 않아도 사용할 수 있다. java.lang 패키지에는 기본형 타입을 객체로 변환할 때 사용하는 Wrapper class가 있다. Boolean, Byte, Short, Integer, Long, Float, Double 클래스 모든 클래스의 최상위 클래스인 Object 문자열 관련된 String, StringBuffer, StringBuilder 화면에 값을 출력할 때 사용한 System 클래스 수학과 관련된 Math 클래스 Thread와 관련된 중요 클래스들 위의 클래스들을 포함한 다양한 클래스 및 인터페이스가 java.lang 패키지에.. 2023. 1. 31.
@RequestParam vs @RequestBody vs @RequestPart 공부한 내용 정리 이번에 처음으로 Spring을 이용해 WAS 서버를 구현하다가 client로 부터의 request body의 parameter를 바인딩하는 방식에 여러 가지 어노테이션을 활용할 수 있음을 알게 되었습니다. 여러가지 글을 참고해서 자세한 원리까지는 모르더라도 일단 오늘 공부를 통해 알게된 내용을 최대한 정리해 보려 합니다. Request message의 data를 매핑하기 위해 사용하는 어노테이션들 @RequestParam @RequestBody @RequestPart @RequestParam https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/bind/annotation/RequestParam.ht.. 2023. 1. 31.
[Java] 예외 처리와 예외 발생과 관련된 개념 정리 오늘은 자바 기본 문법을 공부하며 알게 된, 예외 처리와 예외를 발생시키는 방법에 대해 공부한 과정을 정리해 보려고 합니다. 자바 예외 처리 자바는 코드 상에서 try, catch 구문을 이용해서 예외 처리 구문을 작성할 수 있습니다. 동작 방식을 간단히 정리하면, try 구문에 작성한 코드에서 에러가 발생하는 것을 감지하고, catch 구문에서 예외 처리를 다루는 구조로 동작합니다. catch 구문은 여러 개를 작성할 수 있는데, 이때 각각의 catch 구문에는 어떠한 에러를 다룰 것인지를 명시해 줘야 합니다. 그러면 각각의 오류에 맞는 catch 구문이 예외를 처리하는 구조를 띄게 됩니다. 위 코드와 같이 divide by zero 에러가 런타임에 발생하면, java.lang.ArithmeticExc.. 2023. 1. 12.
[NCP] 네이버 클라우드 플렛폼에서 서버 만들어보기 이번에 새로 시작하는 프로젝트에서는 로컬 DB가 아니라 웹 서버를 이용한 DB를 사용해 보고자(여러모로 편리할 것 같아서) AWS나 NCP 같은 클라우드 서비스를 찾아보다가.. NCP에서 micro 서버를 결제 수단 등록일 기준으로 1년간 무료 지원해준다고 해서 NCP에 입문하게 되었습니다. 우선 NCP 사이트에 들어갑니다. (당연히 로그인이 필요합니다.) NAVER CLOUD PLATFORM cloud computing services for corporations, IaaS, PaaS, SaaS, with Global region and Security Technology Certification www.ncloud.com 여기서 Services -> Server에 들어가 애플리케이션 서버를 생성할 .. 2022. 12. 28.
728x90