맥북 마우스 뒤로가기 & 앞으로가기 버튼 활성화

원래는 맥북을 쓸 때 트랙패드만 사용 해 왔는데, 회사에서 개발을 할 때는 MacOS 가 아닌 Ubuntu 환경에서 개발을 하다 보니 마우스를 많이 쓰게 되었습니다. 집에서의 개발보다 회사에서의 개발이 더 익숙해 질 때가 되니, 맥북을 사용 할 때도 트랙패드만으로는 부족한 부분이 있어서 마우스도 연결해 함께 사용 하기 시작했습니다. ​ 다만 웹 브라우저를 사용 할 때, 마우스의 뒤로가기 버튼과 앞으로 가기 버튼이 먹히지 않는 것을 발견하고 해당 문제를 해결 했습니다. Karabiner 어플리케이션을 사용해 설정 하는데요, 한영 키 조작 때문에 macOS 를 사용하는 대부분의 분들은 Karabiner도 이미 설치 되어 있다고 생각 합니다. 혹시 Karabiner가 아직 설치 되어 있지 않다면 아래의 글을 ..

IT ⁄ Computer/Mac 2021.10.23
JAVA) String을 LocalDateTime 으로 변환하기

API 호출을 하던 중에 JSON 형식으로 받아 온 시간 데이터를 JAVA에서 LocalDateTime 형식으로 받아야 하는 일이 있었습니다. 이럴때는 간단하게 DateTimeFormatter를 이용하면 어떤 형식의 날짜 데이터도 LocalDateTime으로 변환 할 수 있습니다. ​ 일단 제가 parsing 해야 하는 문자열은 아래와 같습니다. "2021-11-05 13:47:13.248";​ 흔하다면 흔한 형식 중에 하나지만 시간값은 어떤 형식으로 올 지 확인 하기 전까진 알기 힘듭니다. 시간 형식이 정확하게 규격화 되어서 한가지만 쓰면 참 좋을텐데 말이죠.. 자바스크립트에서는 moment.js 라이브러리를 자주 쓰게 되더라고요. ​ 일단 code assist 를 받아보니 ofPattern 메서드로 ..

Programming/Java 2021.10.22
Ubuntu 20.04) fctix입력기 설치해 intelliJ 한글입력 해결하기

iBus 입력기의 문제 지금까지 잘 ibus를 사용해왔는데 intelliJ에서 한글 입력시 이상하게 입력되는 현상이 있다는걸 알게 되었습니다. 띄어쓰기를 할 때 자꾸 해당 자리에서 하는 게 아니고 이전 자리에서 하게 되고, 방향키를 입력 할 때에도 마찬가지로 문제가 생겼습니다. 해결을 위해 더이상 iBus 입력기를 사용하지 않고 fctix 입력기로 변경 해 보겠습니다. ​ fcitx 한글 입력기 설치 sudo apt-get update sudo apt-get install fcitx-hangul 이후 재부팅을 해줍니다. ​ Language Support 실행 ​ Keyboard input method system을 fcitx로 변경 ​ Install / Remove Languages 를 눌러 Korean..

IT ⁄ Computer/Linux 2021.10.20
JAVA로 알아보는 힙 (Heap) 자료구조

Heap Heap은 최소값 및 최대값을 최대한 빠르게 찾아내기 위해 특별히 고안된 자료 구조 입니다. 완전 이진트리(마지막 레벨을 제외하고 모든 레벨이 완전히 채워져 있는 트리의 형태)를 기본으로 하고 있으며, 그 목적에 걸맞게 두개의 타입으로 나뉩니다. Max-Heap Max-Heap 에서 root 노드의 key는 무조건 해당 노드의 자식 노드들의 key보다 크거나 같습니다. 또한 같은 속성이 모든 sub-tree 들에게도 재귀적으로 적용됩니다. 간단히 말해 Max-Heap 트리에서 자식 노드에 딸린 트리 하나 하나가 모두 Max-Heap의 조건을 만족합니다. Min-heap Min-Heap 에서는 반대로 root 노드의 키값이 모든 자식들의 키 보다 작거나 같습니다. 또한 재귀적으로 자식 트리들 하나..

Development/Problem Solving 2021.10.16
Java) POI 활용해 DB데이터 엑셀 파일로 저장하기

사용자에게 요구 데이터를 보여 주는 방법은 여러가지가 있습니다. 보통은 웹 페이지를 통해 화면을 보여주는데요, 사용자가 해당 내용을 확인하기 위해서는 항상 해당 웹 페이지에 방문 해야만 하며, 인터넷에 연결되어있어야만 한다는 제약이 생깁니다. 그래서 파일로 조회 데이터를 저장하고자 하는 수요는 반드시 생기고, 그 수요를 충족시키기 위한 여러가지 라이브러리들이 나와 있습니다. 그 대표적으로 Apache POI가 있습니다. ​ Apache POI (Poor Obfuscation Implementation) https://poi.apache.org Apache POI는 아파치 소프트웨어 재단에 의해 운영되는 오픈소스 프로젝트 입니다. 순수 자바 라이브러리로서 Microsoft Office의 Word, Powe..

Programming/Java 2021.10.15