2024/05 6

[Oracle] 오라클 함수 정리

오라클에서 전체 합계 대비 비율 또는 백분율을 구하기 위해서는RATIO_TO_REPORT 이용SELECT ename , sal , RATIO_TO_REPORT(sal) OVER() AS sal_ratioFROM empWHERE job = 'MANAGER' NTILE OVER : 특정 컬럼의 값을 기준으로 N개의 등급 부여하기(오름차순, 내림차순 순서대로 분류가 필요할 때)컬럼K의 값 기준으로 N개의 등급으로 분류하여 조회하려는 경우 (등급 분류 기준은 오름차순)select 컬럼X, 컬럼Y, ..., ntile(숫자N) over (order by 컬럼K) as 별칭Kfrom 테이블A;범주형 변수인 컬럼L 집단별로 컬럼K를 기준으로 N개 등급으로 분류하여 조회하려는 경우 (등급 분류 기준은 내림차..

Database/SQL 2024.05.19

[Java] equals()와 hashCode() 메서드 알아보기

equals와 hashCode란 무엇인가?자바의 부모 객체 Object 클래스 위에는 equals()와 hashCode() 메서드가 선언되어 있다. 1. equals()란?★ 동일성(equality), 동등성(identity) 동일한 객체가 메모리 상에서 띄워져 있는 경우는 서로 다른 메모리에 있으므로 동일한 객체가 아니다. 하지만 같은 값을 지니므로 equals 메서드를 사용해 동등성을 나타내주는 것이다. 값으로 객체를 비교하도록 equals 메서드를 오버라이딩하는 것이다.여기서 의미하는 동일성(equality)과 동등성(identity)은 다른 개념이다. 동일한 값을 갖는 문자열을 2개 생성했을 때, 동등성을 비교하는 equals 메서드를 호출하면 true가 나오지만, 동일성을 비교하면 서로 다른 메..

Java 2024.05.15

AWS는 무엇인가?

AWS = Amazon Web Services미국의 아마존닷컴(amazon.com)이 온라인 비즈니스를 지원하는 시스템 구축 및 운영 노하우를 바탕으로 제공하는 클라우드 컴퓨팅 서비스 세계 최대 규모의 클라우드 컴퓨팅 서비스로 클라우드 = AWS로 생각하는 사람도 많다.글로벌 클라우드는 Amazon, Microsoft, Google이 있고, 국내 클라우드는 Naver Cloud, Kt Cloud, NHH Cloud, Kakao i cloud가 있다. AWS가 왜 생겨났고, 왜 필요한 것인가?기존에는 개인이나 기업이 서버를 운영하기 위해 '서버 구동용 컴퓨터'를 구매하거나 'IDC'에서 서버를 모아 일정한 사용료를 지불하며 서버를 운용하였다.이와 같은 방식에 문제가 발생하였다. 유지 비용이 크다.확장성이 ..

DevOps/AWS 2024.05.11

[Java] Call by value, Call by reference 차이

자바의 변수에는 두 가지 종류가 있다.기본 타입 변수(Primitive type) : int, double, boolean 등과 같은 기본 데이터 유형, 실제 값(value)을 저장한다.참조 타입 변수(Reference type) : 클래스, 인터페이스, 배열 등의 참조 타입을 가지는 변수, 객체가 저장된 실제 메모리 위치를 가리키는 값이 저장된다. 메서드를 호출할 때 파라미터를 전달하는 방법에는 두 가지가 있다.Call by Value (값에 의한 호출)Call by Reference (참조에 의한 호출)자바에서 Call by Reference는 없다. Call by Value만 존재한다. Call by Reference (참조에 의한 호출)메서드 호출 시에 파라미터로 변수를 직접 전달하는 데, 메서드..

Java 2024.05.10

[Java] JVM 메모리 구조 및 실행 단계

Java 언어를 잘 이해하기 위해서 JVM(Java Virtual Machine)의 구조 파악이 선행되어야 한다. 자바 파일을 실행하기 위해 JVM이 어떻게 실행되는지 간략하게 알아보자. 위 그림을 순서대로 정리하면 다음과 같다. 소스코드(.java)를 작성한다.컴파일러(Compiler)가 자바 소스코드를 이용하여 클래스 파일을 생성한다. javac 명령어로 컴파일을 진행한다.컴파일된 클래스 파일(.class) 파일은 JVM이 인식할 수 있는 바이트 코드 파일이다.JVM은 클래스 파일의 바이트 코드를 해석하여 바이너리 코드로 변환한다.프로그램이 실행된다. ✔️ 바이트 코드(Byte Code)란?가상 컴퓨터(Virtual Machine)에서 돌아가는 실행 프로그램을 위한 이진 표현법   이제 위 그림에서 ..

Java 2024.05.09

[OS] Virtual Machine이란? (ft. 도커와 가상 머신의 차이점)

가상 머신(Virtual Machine) Windows를 그대로 사용하면서 여러 대의 리눅스 서버를 운영하는 효과를 내는 프로그램으로, 실제 컴퓨터처럼 작동한다. 컴퓨터 안에 또 다른 컴퓨터를 동작시키는 것 가상 머신을 사용하는 이유- 하나의 컴퓨터에서 서로 다른 운영체제를 실행하고자 할 때- 컴퓨터의 다른 부분에 영향을 주지 않는 독립 환경을 만들고 싶을 때 가상 머신의 종류1. 시스템 가상 머신2. 프로세스 가상 머신 ❗️도커와 가상 머신의 차이는 무엇인가도커(Docker)는 컨테이너 기반의 오픈소스 가상화 플랫폼이다. 컨테이너는 플랫폼에 상관없이 Application을 실행할 수 있는 기술을 의미한다. 도커의 로고가 상징하는 각종 Application을 실어 운반하는 고래처럼 도커 허브(Docker..