2023/02 20

[Java] StringBuffer와 StringBuilder

StringBuffer와 StringBuilder 공통점 String의 단점을 보완한 클래스 내부에 버퍼를 가지고 있어서 버퍼에 메모리를 임시로 저장했다가 사용함 버퍼 내부에서 추가, 수정, 삭제 작업을 할 수 있음 String의 단점 내부 문자열을 수정할 수 없음 문자열에 +연산자를 사용해 문자를 더하면 새로운 객체 생성됨 새로운 객체가 만들어져 재참조 하게 되기에 연산이 있을 때마다 메모리에 객체가 생성된다는 단점이 있음 StringBuffer와 StringBuilder 차이점 동기화 여부에 차이점이 있음 StringBuffer는 각 메서드 별로 Synchronized keyword가 존재하여 멀티스레드 환경에서도 동기화를 지원 StringBuilder는 동기화를 보장하지 않기에 단일스레드 환경에서 ..

[Mac] 맥북 메모 복구 방법

맥북 메모 복구 방법 메모장 검색을 하다보니 몇몇 메모들만 보이는 상태가 됨🥲 해결을 위해 이것 저것 누르다 휴지통 버튼을 잘못 눌러 지우지 말아야할 메모를 지움😵‍💫 정말 다신 경험하고 싶지 않은 상황이기에 복구 방법을 작성하기로 함 사라진 메모 찾기 1. 상단 메뉴바에서 보기 > 폴더 보기 혹은 option + command + s (단축키는 맥북에 따라 다를 수 있음) 2. 메모의 왼쪽 탭에서 원하는 폴더 클릭 최근 삭제한 메모 복구 이 방법으로는 최근 30일까지만 복구가 가능하다고 함 1. 위의 1번 따라하기 보기 > 폴더 보기 클릭 2. 최근 삭제된 항목 폴더 클릭하여 복구 진행

OS/Mac 2023.02.27

[JPA] Order by multiple Columns

Pageable 다중 sorting 하는 방법 Pageable의 sort를 정의하는 부분에 내용만 추가해주면 됨 우선순위는 앞쪽부터 차례대로임 // 컬럼 하나 Pageable pageable = PageRequest.of(page, size, Sort.by("created").descending()); // 컬럼 여러개 Pageable pageable = PageRequest.of(page, size, Sort.by("created").descending(), Sort.Order.asc("startDate")); Sort만 따로 정의한다면? Sort sort = Sort.by( Sort.Order.asc("created"), Sort.Order.desc("startDate") );

프로그래밍/JPA 2023.02.24

[SpringBoot Error] error: Cask 'adoptopenjdk11' is unavailable

error: Cask 'adoptopenjdk11' is unavailable 해결 방법 프로젝트 내의 jdk 버전 맞춰보고, jdk 재설치도 해봤지만 error가 해결이 안돼서 SpringBoot 버전을 바꾸니 해결됨 나의 경우에는 SpringBoot 버전과 jdk가 충돌된 듯 함 Spring Initializr에서 Spring Boot 버전을 기존 다운로드한 버전보다 한 단계 아래로 변경하니 error 해결 아래의 체크한 부분쪽에서 버전을 바꿔주기

[Chrome] 크롬 개발자 도구 console 창 사라졌을 때

크롬 개발자 도구 console 창 띄우기 개발자 도구를 띄우고 디버깅을 하다가 갑자기 사라지는 경우가 있음 source 탭과 console을 같이 봐야 하는데 console이 사라지면 디버깅이 불편해지기에 해결법을 공유하고자 함 소스 탭과 콘솔창 띄워두고 작업을 하던 중(왼쪽 사진) 오른쪽 사진처럼 콘솔창이 사라짐 해결방법 키보드의 esc 누르기 🙌