본문 바로가기
int -> binary string 로 표현하기 배경 https://hyperskill.org/projects/58/stages/315/implement 구현필요부분 File로부터 byte[]을 읽어들어오기 byte[] bytes; try (InputStream inputStream = new FileInputStream(in)) { bytes = inputStream.readAllBytes(); }byte -> binaryString 변환 String binaryString = Integer.toBinaryString((b & 0xFF) + 0x100).substring(1)Q1. int 와 byte는 어떠한 차이를 가지고 있는가? int는 4 바이트 (32비트), byte는 1 바이트 (8비트)로 구성된다. 제일 앞비트는 Sign비트는 0이면 양수.. 2020. 7. 19.
리눅스 Swap Memory SWAP 개요 물리 메모리가 부족하면 메모리 부족 (OOM) 상태가 된다. 리눅스에서는 메모리 부족에 대응하는 장치가 있는데 가상 메모리 방식을 응용한 SWAP 이다. SWAP은 저장 장치 일부를 일시적으로 메모리 대신에 사용하는 방식이다. 구체적으로 시스템의 물리 메모리가 부족한 상태가 되어 물리 메모리를 획득할 때에, 기존에 사용하던 물리 메모리의 일부분을 저장 장치에 저장하여 빈 공간을 만들어 낸다. 이때 메모리의 내용이 저장된 영역을 SWAP 영역이라고 한다. 시스템 구축 시점에 시스템 관리자가 만들어 둡니다. 시나리오 1 - 물리메모리가 부족할때 SWAP을 통한 매모리 확보 시나리오 (프로세스 B) 아직 물리메모리를 할당하지 않은 가상메모리에 접근하려고 시도 (프로세스 B) 가상메모리에서 물리메.. 2020. 7. 4.
Windows10 에 WSL2 설치 및 VSCODE 연동해보기 ▣ WSL2 Windows Sub Linux 시스템의 약자로 가상머신의 오버헤드 없이 GNU/Linux 환경을 windows에서 직접 수행할 수 있다. ▣ WSL2 설치방법 1. windows 버젼이 2004이상으로 업데이트 및 빌드버젼이 19041 이상이여야 한다. 명령어 (Windows Key + R) 의 winver 를 통해서 확인할 수 있다. 2. WSL2 관련 기능 활성화 가상머신플랫폼 Linux용 Windows 하위 시스템 PowerShell을 관리자 권한으로 열어서 실행 dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feat.. 2020. 6. 21.
[Spring] Bean에 대한 이야기 스프링의 코어는 IoC 컨테이너 이다. IoC 컨테이너는 BeanFactory를 의미하고 BeanFactory는 Bean들을 생성하고 관리한다. 그 BeanFactory에서 관리되는 Bean으로 등록하는 방법에 대한 이야기입니다. ▣ Bean의 생명주기를 관리하는 곳 IoC 컨테이너 스프링은 기본 구현체인 BeanFactory 와 상위 구현체인 ApplicationContext 를 제공합니다. 보통의 경우에는 좀 더 확장된 기능을 제공하는 ApplicationContext를 사용하는게 좋습니다. 구현체로 대표적인 것은 AnnotationConfigApplicationContext 를 권장합니다. Bean 스캔 방법 1. @Configuration 기반으로 스캐닝을 진행한다. ApplicationConte.. 2020. 6. 18.
[Spring] NoUniqueBeanDefinitionException ▣ 에러로그 [2020/06/17 11:42:06.012][http-apr-31883-exec-3][ERROR][AbstractStep:225] Encountered an error executing step SomethingJobStep in job SomethingJob org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type [org.springframework.transaction.PlatformTransactionManager] is defined: expected single matching bean but found 2: transactionManager,resourcelessTra.. 2020. 6. 17.
JetBrains Academy with Intellij EduTools 플러그인 ▣ EduTools 플러그인 요즘 사람들이 어떤 intellij 플러그인을 많이 다운 받는지 궁금해서 서칭하던 중에 호기심이 가는 플러그인을 발견했습니다. Jetbrain 사에서 제공하는 EduTools 라는 플러그인입니다. 간단히 소개하면 Intellij 기반으로 Java, Kotlin 등의 언어를 학습하는 플러그인입니다. 플러그인의 오른쪽 설명에 적힌대로 설정 -> 플러그인 설정 -> 계정연결 학습을 지원하는 다양한 사이트가 있습니다. Stepik, Coursera, JetBrains Academy, Js CheckiO 중 본 블로그는 JetBrains Academy를 기준으로 설명합니다. (사실 하나하나 굵직굵직한 학습 사이트입니다.) 회원 가입은 아래 JetBrains Academy 사이트를 통해.. 2020. 6. 17.