반응형
HSQL 변경 및 도커 MySQL 설치부터 '한글깨짐' 현상 해결까지
작업의 진행상황은 github을 확인해주세요
GitHub : https://github.com/dopal2?tab=repositories
egov : https://github.com/dopal2/egovegovproject : https://github.com/dopal2/egovproject
기본 템플릿에 내장된 HSQLDB는 가볍지만 실제 서비스 운영에는 한계가 있습니다. 자바 기반의 오픈 소스 RDBMS인 MySQL로 전환하여 실무 역량을 높여보겠습니다.
1. 도커(Docker) 기반 MySQL 설치
먼저 도커 홈페이지에서 Apple Silicon용 설치 파일을 내려받아 설치합니다. 설치 후 컨테이너 기능을 활성화하면 MySQL을 위한 준비가 끝납니다.
🚀 MySQL 컨테이너 실행 및 DB 생성
- 도커에 MySQL 이미지를 설치하고 실행합니다.
- MySQL 콘솔에 접속하여
sht데이터베이스를 생성합니다.








2. DDL 및 DML SQL 실행
프로젝트 내 DATABASE 폴더에 포함된 MySQL용 스크립트 파일들을 실행합니다.
- DDL 실행: 테이블 구조 생성을 위해
all_sht_ddl_mysql.sql을 실행합니다. - Data 실행: 초기 데이터 입력을 위해
all_sht_data_mysql.sql을 실행합니다.






3. eGovFrame 프로젝트 연동 설정
- globals.properties: 기존 HSQL 주석 처리 후, MySQL 설정의 주석을 해제하고 접속 정보를 입력합니다.
- pom.xml: MySQL 드라이버 의존성을 추가하거나 버전을 확인한 뒤 Maven Update를 수행합니다.
🚨 보안 오류 해결 (Public Key Retrieval)
접속 시
접속 시
Public Key Retrieval is not allowed 오류가 발생한다면, JDBC URL 뒤에 아래 옵션을 추가하세요. allowPublicKeyRetrieval=true&useSSL=false






4. 한글깨짐 현상 및 해결
web.xml의 인코딩 필터나 server.xml을 수정해도 한글이 깨진다면, 원인은 **DB 테이블 자체의 CHARSET** 문제일 확률이 높습니다.
💡 제미나이(Gemini) 분석 결과
프로젝트에 포함된 DDL 스크립트에 DEFAULT CHARSET=utf8 설정이 누락되어 테이블이 latin1으로 생성된 것이 화근이었습니다.
utf8mb4로 변경한 후 데이터를 다시 로드합니다.





마무리하며
우여곡절 끝에 MySQL 연동과 한글 처리까지 마쳤습니다. 이제 데이터가 정상적으로 출력되는 것을 확인했으니, 다음은 게시판 관리자 기능을 통한 커스텀 기능 제작으로 넘어가 보겠습니다!
반응형
'Java > 전자정부프레임워크' 카테고리의 다른 글
| [#eGovFrame] 09. SSO 기초: 서버 인스턴스 간 세션 공유 설정 (0) | 2026.02.21 |
|---|---|
| [#eGovFrame] 08. 인증서 발급 과제 목표 설계 및 테스트 시나리오 (0) | 2026.02.20 |
| [#eGovFrame] 06. 템플릿 프로젝트 구조 분석 및 테스트 리포트 (0) | 2026.02.19 |
| [#eGovFrame] XX. 프로젝트 버전 관리 및 GitHub 연동 가이드 (0) | 2026.02.19 |
| [#eGovFrame] 05. 템플릿 프로젝트를 활용한 실무형 환경 구축 (0) | 2026.02.19 |
댓글