[E] Cannot construct instance of ~ xxxDTO (no Creators, like default constructor, exist): cannot deserialize from Object value
·
⚙ Framework/Spring-스프링
Spring Boot 2.7 + Java 17 환경에서 개발하고, Tomcat 8 + Java 17 (내부적으로는 Java 8) 환경에서 빌드를 시도하니 다음과 같은 에러가 발생했다.[2025-04-17 09:35:12.569] [ERROR] [ ajp-nio-0.*.*.0-8019-exec-42 ] c.s.a.c.w.c.e.ErrorHandler.handleException:26 - 에러 발생: Type definition error: [simple type, class com.skmns.aisc.calladmin.web.combination.adminUser.dto.CombinationResetPwReq]; nested exception is com.fasterxml.jackson.databind.e..
[E] java: warning: source release 17 requires target release 17
·
💻 Language/Java : 자바
IntelliJ에서 Java 17로 실행하던 프로젝트를 서버 환경과 맞추기 위해 Java 8로 다운그레이드하고 재실행하니 다음과 같은 에러가 발생했다.java: warning: source release 17 requires target release 17Module calladmin SDK 1.8 is not compatible with the source version 17.Upgrade Module SDK in project settings to 17 or higher. Open project settings. 해결 방법Java 17 컴파일러를 찾지 못해 발생하는 문제로, 컴파일러 경로를 다시 연결해 주면 해결된다. settings > Build,Execution, Deployment > Comp..
[VMware] VMware Workstation Pro 17 설치 방법 (+Ubuntu 22.04.4)
·
🌐 Environment/Virtual : 가상환경
[VMware] VMware Workstation 17 + CentOS 8 설치 방법대표적 가상환경이라고 할 수 있는 VMware와 Linux를 사용하기 위한 CentOS를 설치한다. VMware Workstation 17 Player : https://www.vmware.com/products/workstation-player.html CentOS 8 : https://www.centos.org/download/ Download Home Didox.tistory.com 2023년에 작성했던 포스팅인데, Broadcom이라는 반도체 기업이 VMware를 인수하면서 Pro 라이선스가 개인에게 무료로 제공 + Broadcom 사이트에 필수로 회원가입을 해야 다운로드 가능하게 변경되어서 포스팅을 다시 작성한다..
[E] Unchecked cast: 'java.lang.Object' to 'java.util.Map<java.lang.String,java.lang.Object>'
·
💻 Language/Java : 자바
IntelliJ에서 위 사진과 같이 Warning 밑줄이 그어져 에러 메시지를 확인해 보니 다음과 같았다. 이 에러는 Java에서 제네릭 타입 캐스팅을 할 때 발생하는 unchecked cast 경고로, Java의 타입 소거(Type Erasure) 때문에 런타임 시점에는 제네릭 타입 정보가 사라지기 때문에 발생하는 것이라고 한다. 해결 방법1. @SuppressWarnings 사용가장 간단하지만, 경고만 무시할 뿐 실제 타입 안전성은 보장되지 않는 방법이다. 런타임에 실제로 캐스팅이 안전한지 확신한다면 사용해도 되지만 타입 안전성을 보장하기 위해서는 2번이나 3번 방법을 사용하는 게 좋음.@SuppressWarnings("unchecked")Map dataBody = (Map) responseBody..
[Markdown] 마크다운(Markdown) 기본 문법 정리
·
💻 Language
마크다운(Markdown)은 일반 텍스트 기반의 경량 마크업 언어다. 일반 텍스트로 서식이 있는 문서를 작성하는 데 사용되며, 일반 마크업 언어에 비해 문법이 쉽고 간단한 것이 특징이다. HTML과 리치 텍스트(RTF) 등 서식 문서로 쉽게 변환되기 때문에 응용 소프트웨어와 함께 배포되는 README 파일이나 온라인 게시물 등에 많이 사용된다.  1. 제목 (Header)# 제목 1## 제목 2### 제목 3#### 제목 4##### 제목 5###### 제목 6  2. 목록 (List)탭(Tab) 들여쓰기로 서브 목록 생성 가능2-1. 순서 없는 목록 (Unordered List)-, *, + 기호를 구분하지 않고 사용 가능- 아이템 1* 아이템 2+ 아이템 3* 1단계 - 2단계 + 3단계 ..
[Java/JPA] QueryDSL이란?
·
💻 Language/Java : 자바
QueryDSLQueryDSL은 Java 기반의 타입 안전(type-safe)한 SQL 쿼리 생성 라이브러리입니다. 주로 JPA, Hibernate 등과 함께 사용되어 복잡한 쿼리를 코드로 안전하게 작성할 수 있도록 도와줍니다. 다음은 QueryDSL의 주요 특징과 장점, 그리고 사용 예시입니다. QueryDSL은 정적 타입을 이용해서 SQL과 같은 쿼리를 생성할 수 있도록 해 주는 오픈소스 프레임워크이다. Fluent API를 이용해 코드 작성 형식으로 쿼리를 생성할 수 있게 한다. QueryDSL이 적합한 상황은 아래와 같다.복잡한 검색 조건이 필요한 경우 (ex. 게시판 필터, 검색 기능)동적 쿼리가 자주 필요한 도메인SQL 쿼리를 문자열이 아닌 안전한 코드로 다루고 싶을 때 Querydsl - U..
[Spring] JPA Enum Converter로 DB Entity Mapping하기
·
⚙ Framework/Spring-스프링
Spring JPA에서 Enum을 데이터베이스 컬럼과 매핑하기 위해 Enum Converter 추상 클래스를 사용할 수 있다.이 방식을 이용하면 Enum을 더 유연하고 안전하게 DB와 연동할 수 있고, 유지보수성이 향상되는 장점이 생김! 일반적인 방식 - 1Enum Converter 없이 일반적으로 Enum을 사용하는 구조(JPA 기본 방식)는 다음과 같다.@Enumerated(EnumType.STRING) : enum 이름("ACTIVE", "INACTIVE")을 DB에 저장@Enumerated(EnumType.ORDINAL) : enum의 순서, index값(0, 1)을 DB에 저장public enum Status { ACTIVE, INACTIVE;}@Entitypublic class State..
[Vue] ESLint에서 TypeScript 코드 문법 인식되지 않는 경우
·
⚙ Framework/Vue-뷰
VSCode에서 Vue 프로젝트에 ESLint를 사용할 때, TypeScript 문법이 인식되지 않아 오류로 판단되는 경우가 있다. 아래 명령을 실행하여 ESLint 설정 파일을 생성한다.npx eslint --init 질문이 나오면 다음과 같이 답변한다.How would you like to use ESLint?To check syntax, find problems, and enforce code style (문법 검사 + 스타일 규칙 적용)What type of modules does your project use?JavaScript modules (import/export) (Vue + TypeScript + Vite 프로젝트는 ESM 사용)Which framework does your projec..