MySQL SMALLINT에 대응하는 Java 자료형
MySQL의 SMALLINT에 해당하는 Java 자료형은 short입니다. Java의 short는 2바이트(16비트) 크기를 가지며, 표현할 수 있는 값의 범위는 -32,768부터 32,767까지입니다. MySQL의 SMALLINT 역시 2바이트를 사용하고 동일한 범위를 가지므로, 두 자료형은 크기와 값의 범위 면에서 완벽하게 호환됩니다.
참고로 MySQL에서 UNSIGNED 옵션을 적용하면 SMALLINT는 0부터 65,535까지 표현할 수 있습니다. 하지만 Java에는 부호 없는 정수 타입이 없기 때문에, UNSIGNED SMALLINT 컬럼을 다룰 때는 int 타입으로 매핑하는 것이 안전합니다.
Java short 데모 코드
다음은 Java에서 short 자료형의 동작을 보여주는 예제 코드입니다.
public class SmallIntAsShortDemo {
public static void main(String[] args) {
short value = 32767;
System.out.println(value);
value = -32768;
System.out.println(value);
// value = 32768; // 컴파일 오류 발생
// System.out.println(value);
}
}위 코드에서는 short 변수에 최댓값인 32767과 최솟값인 -32768을 차례로 대입하여 출력합니다. 주석 처리된 부분처럼 32768을 대입하면 short의 표현 범위를 벗어나므로 컴파일 오류가 발생한다는 점에 유의하세요.
실행 결과
32767
-32768
Eclipse IDE에서 위 코드를 실행하면 다음과 같은 결과 화면을 확인할 수 있습니다.

정리
MySQL의 SMALLINT는 2바이트 크기에 -32,768 ~ 32,767의 범위를 가지며, Java의 short와 크기와 범위가 정확히 일치합니다. 따라서 데이터베이스의 SMALLINT 컬럼을 애플리케이션에서 다룰 때는 Java의 short 타입을 사용하는 것이 가장 적합합니다.