포털사이트 postgresql 연동
- 작성자 :
- 김*석
- 작성일 :
- 2019-04-05 10:17:26
- 조회수 :
- 3,916
- 구분 :
- 공통컴포넌트
- 진행상태 :
- 완료
Q
안녕하세요,
포털 사이트 템플릿에 postgresql DB를 연동하던중 오류가 발생하여 질문합니다.
먼저 dependency를 추가하였습니다.
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.1-901-1.jdbc4</version>
</dependency>
다음과 같이 bean을 추가하였습니다.
<!-- postgresql -->
<bean id="dataSource-postgresql" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${Globals.DriverClassName}"/>
<property name="url" value="${Globals.Url}" />
<property name="username" value="${Globals.UserName}"/>
<property name="password" value="${Globals.Password}"/>
</bean>
Global.properties에 다음과 같이 작성하였습니다.
# 운영서버 타입(WINDOWS, UNIX)
Globals.OsType = WINDOWS
# G4C 연결용 IP (localhost)
Globals.LocalIp = 127.0.0.1
# DB서버 타입(mysql,oracle,altibase,tibero) - datasource 및 sqlMap 파일 지정에 사용됨
Globals.DbType =postgresql
Globals.UserName=postgres
Globals.Password=1
#Postgresql
Globals.DriverClassName=org.postgresql.Driver
Globals.Url=jdbc:postgresql://127.0.0.1:5432/IBMGNT
디버깅시 첨부한 내용이 출력됩니다.
추가하거나 수정해야 하는 부분이 있는지 궁금합니다.
포털 사이트 템플릿에 postgresql DB를 연동하던중 오류가 발생하여 질문합니다.
먼저 dependency를 추가하였습니다.
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.1-901-1.jdbc4</version>
</dependency>
다음과 같이 bean을 추가하였습니다.
<!-- postgresql -->
<bean id="dataSource-postgresql" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${Globals.DriverClassName}"/>
<property name="url" value="${Globals.Url}" />
<property name="username" value="${Globals.UserName}"/>
<property name="password" value="${Globals.Password}"/>
</bean>
Global.properties에 다음과 같이 작성하였습니다.
# 운영서버 타입(WINDOWS, UNIX)
Globals.OsType = WINDOWS
# G4C 연결용 IP (localhost)
Globals.LocalIp = 127.0.0.1
# DB서버 타입(mysql,oracle,altibase,tibero) - datasource 및 sqlMap 파일 지정에 사용됨
Globals.DbType =postgresql
Globals.UserName=postgres
Globals.Password=1
#Postgresql
Globals.DriverClassName=org.postgresql.Driver
Globals.Url=jdbc:postgresql://127.0.0.1:5432/IBMGNT
디버깅시 첨부한 내용이 출력됩니다.
추가하거나 수정해야 하는 부분이 있는지 궁금합니다.
A
안녕하십니까, 표준프레임워크센터입니다.
현재 작성하신 부분에대해서는 특별히 문제가 있어보이지 않습니다.
annot resolve reference to bean 'egov.dataSource' while setting bean property 'dataSource'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'dataSource-postgresql ' available
해당로그를 빈을 참조하지 못하는 것으로 보이는데, propertyConfigure 설정의 변동이나, bean에 대한 설정을 변경하신 사항이 없다면
빌드의 문제로 보여집니다.
보셨으리라 짐작되지만 context-sqlMap.xml에서 해당 sqlMap에대한 dbType 파일도 생성해주셔야합니다.
postgreSQL SQLMap은 포탈템플릿에서 지원되지 않으며, 공통컴포넌트 올인원에서 지원되고 있습니다.
수동변경을 원한신다면, MySQL 스크립트에서 몇가지 변경사항을 고려하여 변경하시면 될 것 같습니다.
1. “”기호 사용하여 Create Table시 select 문에서 반드시 ""사용 하고 대소문자 구분
2. Query converting ( IFNULL => COALESCE)
3. Query converting ( DATE_FORMAT => TO_CHAR)
4. Query converting ( sysdate() => current_timestamp)
5. Query converting ( Alias 별칭의 대소문자 무시=> 쌍따옴표 필요)
변경이 필요합니다.
G4C의 경우 주석처리 하셔도 무관합니다.
감사합니다.
현재 작성하신 부분에대해서는 특별히 문제가 있어보이지 않습니다.
annot resolve reference to bean 'egov.dataSource' while setting bean property 'dataSource'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'dataSource-postgresql ' available
해당로그를 빈을 참조하지 못하는 것으로 보이는데, propertyConfigure 설정의 변동이나, bean에 대한 설정을 변경하신 사항이 없다면
빌드의 문제로 보여집니다.
보셨으리라 짐작되지만 context-sqlMap.xml에서 해당 sqlMap에대한 dbType 파일도 생성해주셔야합니다.
postgreSQL SQLMap은 포탈템플릿에서 지원되지 않으며, 공통컴포넌트 올인원에서 지원되고 있습니다.
수동변경을 원한신다면, MySQL 스크립트에서 몇가지 변경사항을 고려하여 변경하시면 될 것 같습니다.
1. “”기호 사용하여 Create Table시 select 문에서 반드시 ""사용 하고 대소문자 구분
2. Query converting ( IFNULL => COALESCE)
3. Query converting ( DATE_FORMAT => TO_CHAR)
4. Query converting ( sysdate() => current_timestamp)
5. Query converting ( Alias 별칭의 대소문자 무시=> 쌍따옴표 필요)
변경이 필요합니다.
G4C의 경우 주석처리 하셔도 무관합니다.
감사합니다.