전체 글
해시 - Lv1 완주하지 못한 선수 ( 프로그래머스 / JAVA )
안녕하세요. 그린주입니다 ๑'ٮ'๑ 프로그래머스 코딩 테스트 시작! 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr 문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution함수를 작성해주세요. 제한사항 1. 마라톤 경기에 ..
JVM은 무엇이며 자바 코드는 어떻게 실행하는 것인가.
안녕하세요. 그린주입니다 ๑'ٮ'๑ 목표 자바 소스 파일(. java)을 JVM으로 실행하는 과정 이해하기. 학습할 것 JVM 설명 Compiler 바이트코드 JIT 컴파일러 JDK와 JRE의 차이 JVM 설명 1. JVM(Java Virtual Machine)이란 무엇인가? JVM는 JAVA를 어디에서나 실행 가능하게 해주는 가상 머신입니다. JAVA는 운영체제(OS)에 종속적이지 않다는 특징을 가지고 있습니다. 운영체제에 종속받지 않고 실행되기 위해서는 운영체제에서 JAVA를 실행시킬 무언가가 필요합니다. 그게 바로 JVM입니다. 2. JVM 구성 요소 클래스 로더(Class Loader) 자바 컴파일러에 의해 바이트코드로 변환된 클래스를 읽어 들여 Runtime Data Area에 적재하는 역할을 ..
Web server failed to start. Port 8080 was already in use. ( Spring Boot )
안녕하세요. 그린주입니다 ๑'ٮ'๑ 오늘도 힘차게 시작해보겠습니다! 개요 이번 글에서는 port 8080 was already in use. 해결방법을 공유하고자 합니다. 목차 문제 상황 문제 확인 문제 해결 문제 상황 1. 포트가 이미 실행 중인데 스프링에서 같은 포트로 Run 하게 될 경우 *************************** APPLICATION FAILED TO START *************************** Description: Web server failed to start. Port 8080 was already in use. Action: ... 2. 비정상적인 was 종료 후 재시작할 경우 'Starting Tomcat v7.0 Server at localhos..
nohup 사용법과 nohup.out 파일 명 변경, 로그 없이, 날짜 별로 rotation 하는 방법 ( Linux )
안녕하세요. 그린주입니다 ๑'ٮ'๑ 오늘도 힘차게 시작해보겠습니다! 개요 이번 글에서는 nohup 사용법과 nohup.out 로그 관련 설정, 프로세스를 종료하는 방법을 공유하고자 합니다. 목차 nohup 설명 nohup.out 관리 nohup.out 날짜 별로 rotation 하는 방법 nohup 프로세스 종료 nohup 설명 1. nohup이란 무엇인가? "no hangups"라는 의미로 리눅스, 유닉스에서 명령어나 쉘 스크립트 파일(*. sh)을 데몬 형태로 실행시키는 프로그램입니다. 2. nohup을 사용하는 이유? nohup은 터미널이나 세션이 종료되어도 해당 프로세스가 종료되지 않고 동작하여 진행한 작업이 완료될 때까지 수행할 수 있도록 도와줍니다. 가끔 오랜 시간이 걸리는 스크립트나 명령어를..
Cron 표현식( Linux )
안녕하세요. 그린주입니다 ๑'ٮ'๑ 오늘도 힘차게 시작해보겠습니다! 개요 이번 글에서는 cron 표현식을 공유하고자 합니다. 목차 cron 설명 crontab 설정 방법 cron 표현식 cron 설명 1. cron이란 무엇인가? cron(크론)은 스케줄러의 정규 표현식으로 원하는 시간에 명령(프로그램)을 실행시키기 위한 데몬입니다. crontab이라고도 하는데 cron작업을 설정하는 파일을 crontab 파일이라고 합니다. cron은 별도로 실행을 시키는 것 없이, 작성하고 저장하는 순간부터 스케줄링이 시작됩니다. 2. cron을 사용하는 이유? 사람이 직접 서버에서 특정 작업을 매일 하는 건 한계가 있기 때문입니다. crontab 설정 방법 cron 설정 자체는 /etc/crontab에서 합니다. 사용..
IntelliJ에서 자주 사용하는 단축키와 단축키 설정 ( IntelliJ / Windows )
안녕하세요. 그린주입니다 ๑'ٮ'๑ 오늘도 힘차게 시작해보겠습니다! 개요 이번 글에서는 IntelliJ Windows에서 자주 사용하는 단축키와 단축키 설정 방법을 공유하고자 합니다. 단축키를 모르더라도 IntelliJ의 기능을 사용하는 데는 큰 문제없지만 몇 개의 단축키만 알아도 삶의 질이 한층 올라간답니다! (۶•̀ᴗ•́)۶ 목차 IntelliJ IDEA 설명 자주 사용하는 단축키 단축키 Keymap 설정 IntelliJ IDEA 설명 IntelliJ IDEA란 무엇인가? IntelliJ IDEA는 JetBrains사에서 개발한 JAVA 전문 IDE(Integrated Development Environment, 통합 개발 환경)입니다. IntelliJ IDEA 공식 사이트 IntelliJ IDEA의..
AWS EC2 탄력적 IP 주소 할당하기 ( AWS / EC2 )
안녕하세요. 그린주입니다 ๑'ٮ'๑ 오늘도 힘차게 시작해보겠습니다! 개요 이번 글에서는 AWS EC2 탄력적 IP 주소 할당하는 방법을 공유하고자 합니다. 목차 AWS EC2 탄력적 IP 설명 탄력적 IP 주소 할당 AWS EC2 탄력적 IP 설명 탄력적 IP 주소란 무엇인가? 고정 IP를 할당받기 위해서 탄력적 IP라는 것을 이용합니다. AWS EC2 인스턴스를 생성하면 AWS 측에서 해당 인스턴스에 대한 public IP를 할당해줍니다. 이 public IP는 유동적이어서 인스턴스를 중지했다가 다시 시작하면 새로운 public IP가 할당됩니다. 탄력적 IP(Elastic IP)는 유동적인 IP를 가진 인스턴스에 고정 IP를 연결해주어 안정적으로 서버를 운영할 수 있도록 합니다. 자, 그럼 실전으로 ..
Querydsl에서 사용하는 Case(when, then), Coalesce(IFNULL), Concat(문자열 붙이기) 알아보기 ( Querydsl / Java )
안녕하세요. 그린주입니다 ๑'ٮ'๑ 오늘도 힘차게 시작해보겠습니다! 개요 이번 글에서는 Querydsl에서 사용하는 Case(when, then), Coalesce(IFNULL), Concat(문자열 붙이기)에 대해 공유해드리겠습니다. 목차 Case(when, then) Coalesce(IFNULL) Concat(문자열 붙이기) Case(when, then) JPA에서 지원하는 내용과 동일하게 지원하며 select, where 절에서 사용 가능합니다. 단순한 조건은 when(), then() 메서드 호출로 간단하게 구현할 수 있고 복잡할 경우 CaseBuilder를 사용합니다. 단순 case 예제 .select( student.name, student.age, student.age.when(8).then..