데이터베이스
데이터베이스를 사용하기 위한 모듈을 커스터마이징 할 수 있는 영역을
제공합니다.
1. 제공되는 커스터마이징 목록(2)
기능 | 설명 |
---|---|
bindDatabaseAccessProviderDelegate |
테이블/컬럼 조회 등 프레임워크 커넥션에 직접 접근하는 SQL을 반환하는 모듈을 바인딩합니다. |
bindRakeTableSqlGeneratorProvider |
테이블, 컬럼 정보를 조회하기 위한 SQL을 반환하는 모듈을 바인딩합니다. |
2. 상세
메소드의 기능을 확인하고 필요한 부분을 커스터마이징 할 수 있습니다.
2.1. bindDatabaseAccessProviderDelegate
테이블/컬럼 조회 등 프레임워크 커넥션에 직접 접근하는 SQL을 반환하는 모듈을 바인딩합니다.
1. 인터페이스 및 클래스
모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.
com.bankwareglobal.ide.bxframework.core.database.access.IDatabaseAccessProviderDelegate
2. 기본 구현 클래스
해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.
com.bankwareglobal.ide.bxframework.se.database.access.BxmDatabaseAccessProviderDelegate
3. 구현 예제
com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtDatabaseAccessProviderDelegate
package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;
import java.util.List;
import com.bankwareglobal.ide.bxframework.core.database.access.IDatabaseAccessProvider;
import com.bankwareglobal.ide.bxframework.core.documentation.Documentation;
import com.bankwareglobal.ide.bxframework.se.database.access.BxmDatabaseAccessProviderDelegate;
import com.bankwareglobal.ide.bxframework.se.extensions.database.access.ExtDatabaseAccessProvider;
import com.google.common.collect.Lists;
/**
* 테이블/컬럼 조회 등 프레임워크 커넥션에 직접 접근하는 프로바이더를 반환하는 위임자
*/
public class ExtDatabaseAccessProviderDelegate extends BxmDatabaseAccessProviderDelegate {
/**
* DB 벤더, 버전에 일치하는 프로바이더가 없는 경우에 사용할 기본 프로바이더 생성합니다.
*/
@Override
protected IDatabaseAccessProvider createDefault() {
return new ExtDatabaseAccessProvider();
}
/**
* 사용할 프로바이더를 반환합니다.
*/
@Override
protected List<IDatabaseAccessProvider> getProviders() {
List<IDatabaseAccessProvider> list = Lists.newArrayList();
return list;
}
}
4. 재구현된 메소드 목록(2)
메소드 이름 | 설명 |
---|---|
createDefault |
DB 벤더, 버전에 일치하는 프로바이더가 없는 경우에 사용할 기본 프로바이더 생성합니다. |
getProviders |
사용할 프로바이더를 반환합니다. |
2.2. bindRakeTableSqlGeneratorProvider
테이블, 컬럼 정보를 조회하기 위한 SQL을 반환하는 모듈을 바인딩합니다.
1. 인터페이스 및 클래스
모듈이 반드시 구현 해야하는 인터페이스 또는 상속 해야하는 클래스입니다.
com.bankwareglobal.ide.bxframework.core.datatools.IRakeTableSqlGeneratorProvider
2. 기본 구현 클래스
해당 기능을 위해 구현된 기본 클래스입니다. 인터페이스 및 클래스에서 필요한 기본 기능이 구현되어있으며 모듈을 확장할 경우 이 클래스를 상속 받아서 구현할 수 있습니다.
com.bankwareglobal.ide.bxframework.se.datatools.BxmRakeTableSqlGeneratorProvider
3. 구현 예제
com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl.ExtRakeTableSqlGeneratorProvider
package com.bankwareglobal.ide.bxframework.se.extensions.overriding.impl;
import com.bankwareglobal.ide.bxframework.core.documentation.Documentation;
import com.bankwareglobal.ide.bxframework.se.datatools.BxmRakeTableSqlGeneratorProvider;
import com.bankwareglobal.ide.bxframework.se.extensions.datatools.ExtOracleRakeTableSqlGenerator;
import com.bankwareglobal.ide.datatools.product.IRakeTableSqlGenerator;
/**
* 테이블, 컬럼 정보를 조회하기 위한 SQL 생성기 제공자
*/
public class ExtRakeTableSqlGeneratorProvider extends BxmRakeTableSqlGeneratorProvider {
/**
* 테이블, 컬럼 정보를 조회하기 위한 SQL 생성기를 반환합니다. 확장하지 않을 경우 null 반환합니다.
*/
@Override
public IRakeTableSqlGenerator get(String vendor) {
IRakeTableSqlGenerator oracleGenerator = new ExtOracleRakeTableSqlGenerator();
if (oracleGenerator.getVendor().equals(vendor)) {
return oracleGenerator;
}
return null;
}
}
4. 재구현된 메소드 목록(1)
메소드 이름 | 설명 |
---|---|
get |
테이블, 컬럼 정보를 조회하기 위한 SQL 생성기를 반환합니다. 확장하지 않을 경우 null 반환합니다. |