2023/10 5

[Gradle] MySQL JDBC 연결 방법

서론 (Introduction) Java에서 JDBC를 이용해 MySQL에 연결하는 방법을 알아보고, MySQL 드라이버의 연결과정에 대해서 알아보자 본문 (Body) 1. MySQL을 실행한다. 아래 Docker Compose를 이용하면 localhost:3306을 통해서 mysql에 접속이 가능하다. 물론 도커가 아니라 직접 설치해도 된다. services: db: image: mysql:8.2.0 command: --default-authentication-plugin=mysql_native_password restart: always environment: MYSQL_ROOT_PASSWORD: example MYSQL_DATABASE: testDB ports: - 3306:3306 2. gradl..

카테고리 없음 2023.10.30

Arc browser 한국어 번역 적용 방법

현재 Arc browser를 이용해 번역을 사용하려고 하면 영어로만 번역하려고 한다. 다음 절차를 통해 한국어로 번역하도록 수정 할 수 있다. 1. 언어 설정 페이지 이동 command + L 을 입력하고 arc://settings/lanugages 를 입력한다. 2. 한국어 추가 Add languages 버튼 클릭 후 다음과 같이 한국어를 추가한다. 3. 번역 언어 설정 아래와 같이 한국어를 번역어로 설정한다. 4. 확인 아래와 같이 한국어로 번역대상이 설정된 경우 성공이다.

Etc 2023.10.19

Gradle - QueryDSL JPA 가장 간단하게 설정하기!

서론 (Introduction) QueryDSL은 ORM을 사용하다 보면 언젠가는 사용하게 될 기술 중 하나입니다. 이를 설정하는 법을 구글링해보면 표준적인 설정 방법이 없기 때문에 각기 다른 방법을 제시하고 그만큼 설정에 에러를 많이 겪는 경우가 보입니다. 여기에서는 자바 버전에 따라 가장 간단하게 QueryDSL을 설정하는 방법을 알아보고, 각 설정의 의미에 대해서 서술해보도록 하겠습니다. 본문 (Body) 간단한 QueryDSL 원리 설정에 대해 알아보기전, 간단하게 QueryDSL의 원리에 대해 알면 설정을 이해하기 쉽습니다. 만약, 빠르게 설정만 하고 싶다면 아래 (QueryDSL 설정)를 바로 참고하시기 바랍니다. QueryDSL은 "쿼리를 안전하고 쉽게 하기 위한 도메인 특화언어(DSL, D..

카테고리 없음 2023.10.14

Hibernate - Oracle Dialect 정확히 사용하기

서론 (Introduction) JPA를 사용하면 대표적인 구현체인 HIbernate를 사용하게 됩니다. HIbernate는 SQL 쿼리를 생성하주는 기능을 가지고 있는데, MySQL, Oracle 등 데이터베이스 마다 문법이 조금씩 다르기 때문에 Dialect(방언)을 설정해 주어야합니다. 이번 글에서는 Oracle 데이터베이스를 위한 Dialect 설정에 대해서 다루어보도록 하겠습니다. 본문 (Body) a. org.hibernate.dialect Hibernate에서는 데이터베이스 방언들을 org.hibernate.dialect 패키지에 정리하고 있습니다. 이 패키지의 내용은 hibernate 버전이 변경되면서 조금씩 바뀌어왔습니다. 여기에서는 이전 버전과 현재 버전의 dialect 적용에 대해서 ..

카테고리 없음 2023.10.13

JPA - Value '0000-00-00' can not be represented as java.sql.Date

서론 (Introduction) JPA를 사용한 스프링 프로젝트를 기존에 존재하던 오라클 데이터베이스에 접속하자 JPA - Value '0000-00-00' can not be represented as java.sql.Date 에러가 발생했습니다. 이 에러가 발생한 원인과 해결과정에 대해서 다루어보겠습니다. 원인 파악 (Diagnosis) 먼저 상황을 재현해보도록 하겠습니다. 아래와 같이 LocalDate 타입을 가진 필드를 선언한 엔티티를 이용해 데이터베이스에서 데이터를 가져오는 과정에서 에러가 발생했습니다. 날짜가 포함된 컬럼에 '0000-00-00' 데이터를 가진 튜플이 있었는데, 이 튜블을 데이터베이스에서 조회해 클래스로 변환하는 과정에서 에러가 발생했습니다. @Entity(name = "per..

카테고리 없음 2023.10.13