Brawny Develop/KR_Practical Development Basics_Java
-
java.lang.ClassCastException: class java.math.BigDecimal cannot be cast | 오류 해결Brawny Develop/KR_Practical Development Basics_Java 2025. 8. 20. 17:37
MyBatis를 사용하면서 Oracle 등의 DB NUMBER 컬럼을 BigDecimal로 매핑할 때, 종종 다음과 같은 오류가 발생할 수 있다.java.lang.ClassCastException: class java.math.BigDecimal cannot be cast to class ...이 오류의 원인과 해결 방법을 정리해본다.🔹 오류 원인1. VO 타입과 실제 반환 객체 불일치MyBatis는 NUMBER 컬럼을 가져올 때 JDBC 드라이버가 반환하는 타입(BigDecimal)을 기반으로 매핑한다.VO나 Map에서 다른 타입으로 캐스팅하려 하면 ClassCastException 발생예: VO에서는 Integer, Long으로 선언했는데 DB에서는 NUMBER(10,2) → BigDecimal 반..
-
JAVA List 특정 값 제거 방법, 중복 값 제거 방법Brawny Develop/KR_Practical Development Basics_Java 2025. 7. 31. 16:11
Java에서 List 컬렉션을 사용할 때 특정 값을 찾아 제거하는 일은 매우 자주 발생한다.특히 대용량의 데이터에서 조건에 맞는 값을 효율적으로 삭제하거나, 중복된 항목을 제거해야 할 때 유용하다.Java에서는 List 인터페이스를 구현한 대표적인 클래스인 ArrayList, LinkedList 등에서 remove() 메서드를 제공하여 값을 제거할 수 있다.가장 기본적인 방식은 remove(Object o) 메서드를 사용하는 것이다. 이 메서드는 리스트에서 해당 값을 처음으로 찾은 요소 하나를 삭제한다.만약 리스트 안에 같은 값이 여러 개 있더라도 첫 번째 값 하나만 제거된다.또는 동일한 중복 값을 제거하려면 Collections.singleton()을 활용해서특정한 중복값을 모두 제거할 수 있다.리스트..
-
JAVA can not find symbol 에러 해결방법 | can not resolve symbolBrawny Develop/KR_Practical Development Basics_Java 2025. 7. 29. 17:01
Java 개발 중 “cannot find symbol” 오류는 매우 흔하게 만나는 컴파일 오류이다. 이 오류는 컴파일러가 코드 내에서 참조한 클래스, 변수, 메서드 등 심볼(이름)을 찾지 못할 때 발생한다. 즉, 컴파일러가 해당 심볼을 인식하지 못해 컴파일을 진행할 수 없다는 의미다.🔹 주요 원인- 이름 오타가장 빈번한 원인이다. 클래스명, 변수명, 메서드명에서 철자나 대소문자를 틀렸을 경우 발생한다. Java는 대소문자를 엄격히 구분하기 때문에 주의해야 한다.- 심볼이 선언되지 않음사용하려는 클래스, 변수, 메서드가 정의되어 있지 않은 상태에서 호출할 경우 발생한다. 예를 들어, 클래스 파일이 프로젝트에 포함되지 않았거나 해당 메서드가 존재하지 않을 때이다.- import 문 누락다른 패키지에 속한 ..
-
Exception in thread "main" java.lang.NoClassDefFoundError 오류 해결 방법 | 오류 원인Brawny Develop/KR_Practical Development Basics_Java 2025. 7. 29. 16:39
Exception in thread "main" java.lang.NoClassDefFoundError: com/example/MyClass 오류처음 보면 당황스러울 수 있지만, 이 오류는 Java 프로그램이 특정 클래스를 찾지 못했을 때 발생한다.컴파일은 정상적으로 되었지만, 실행 시점에서 해당 클래스를 메모리에 로드할 수 없을 때 발생하는 전형적인 런타임 오류이다.이 오류의 정확한 의미와 원인, 해결방법을 공유한다.🔹 NoClassDefFoundError란 무엇인가JVM이 실행 중에 클래스 정의(Class Definition) 를 찾지 못했을 때 발생한다.컴파일 시점에는 클래스가 존재했지만, 실행 중에는 해당 클래스 파일이 누락되었거나 경로 설정이 잘못되었을 경우 발생한다.main 메서드가 포함된 ..