■ Project ■/개발 환경

[개발환경] 전자정부 표준프레임워크 v3.9 - HSQL 대신 MariaDB 변경

한길(One Way) 2023. 2. 13.

2023.02.13 - [Project/개발 환경] - [개발환경] 전자정부 표준프레임워크 v3.9 - 설치 및 실행

 

[개발환경] 전자정부 표준프레임워크 v3.9 - 설치 및 실행

1. 개요 전자정부 표준프레임워크는 공공사업에 적용되며 java 기반의 정보시스템 개발을 위해 표준을 제공한다. 미리 구현된 주요 기능을 제공하여 효율적인 애플리케이션 구축을 지원하며 표

agapeuni.tistory.com

 

전자정부 표준프레임워크를 작업노트북에 설치했다. 설치하고 나서 eGovFrame Web Project를 생성할 때 기본 예제를 선택하면 HSQL를 사용한 CRUD가 제공된다. 이번 포스팅에서는 HSQL에서 MariaDB로 변경하려 한다.

 

테이블 생성

먼저 아래의 스크립트로 MaraiDB에 기본예제를 위한 테이블을 생성한다.

CREATE TABLE `ids` (
	`TABLE_NAME` VARCHAR(16) NOT NULL,
	`NEXT_ID` DECIMAL(30,0) NOT NULL,
	PRIMARY KEY (`TABLE_NAME`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
;

CREATE TABLE `sample` (
	`ID` VARCHAR(16) NOT NULL,
	`NAME` VARCHAR(50) NULL DEFAULT NULL,
	`DESCRIPTION` VARCHAR(100) NULL DEFAULT NULL,
	`USE_YN` CHAR(1) NULL DEFAULT NULL,
	`REG_USER` VARCHAR(10) NULL DEFAULT NULL,
	PRIMARY KEY (`ID`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
;

INSERT INTO sample VALUES('sample-00001','Runtime Environment','Foundation Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00002','Runtime Environment','Persistence Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00003','Runtime Environment','Presentation Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00004','Runtime Environment','Business Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00005','Runtime Environment','Batch Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00006','Runtime Environment','Integration Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00007','Runtime Environment','Integration Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00008','Runtime Environment','Integration Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00009','Runtime Environment','Integration Layer','Y','eGov');
...(중략)...
INSERT INTO sample VALUES('sample-00109','Runtime Environment','Integration Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00110','Runtime Environment','Integration Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00111','Runtime Environment','Integration Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00112','Runtime Environment','Integration Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00113','Runtime Environment','Integration Layer','Y','eGov');
INSERT INTO sample VALUES('sample-00114','Runtime Environment','Integration Layer','Y','eGov');
INSERT INTO ids VALUES('sample',115);
 

MariaDB로 설정

context-datasource.xml 파일에서 HSQL 부분은 주석으로 하고 MariaDB로 설정한다.

	<!-- 
	<jdbc:embedded-database id="dataSource" type="HSQL">
		<jdbc:script location= "classpath:/db/sampledb.sql"/>
	</jdbc:embedded-database>
	-->
    
	<context:property-placeholder location="classpath:property/database.properties" />

	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
		<property name="driverClassName" value="${database.driverClass}" />
		<property name="url" value="${database.url}" />
		<property name="username" value="${database.username}" />
		<property name="password" value="${database.password}" />
		<property name="initialSize" value="5" />
		<property name="maxActive" value="20"/>
	</bean>
 

database.properties 파일

* MariaDB 일 경우

# MariaDB
database.driverClass=org.drizzle.jdbc.DrizzleDriver
database.url=jdbc:mysql:thin://root@127.0.0.1:3306/test?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&autoReconnect=true
database.username=root
database.password=1234
 
* MySQL 일 경우
# MySQL
database.driverClass=com.mysql.jdbc.Driver
database.url=jdbc:mysql://192.168.0.11:3306/test
database.username=root
database.password=1234
 

* Oracle 일 경우

# Oracle
database.driverClass=oracle.jdbc.driver.OracleDriver
database.url=jdbc:oracle:thin:@127.0.0.1:1521:test
database.username=scott
database.password=tiger
 

목록 페이지 확인

웹서버를 다시 기동 하면  MariaDB를 사용하여 데이터를 가져온다.

등록 페이지 확인

 

수정 페이지 확인

 
 
728x90

댓글