2012-05-16 3 views
1

DataSource.groovy는 BootStrap.groovy 이전에 평가 된 것으로 보입니다. 그러나 DataSource.groovy에서 정적 메서드를 호출 할 수 있도록 설정해야합니다 (데이터베이스 설정이 복잡합니다).DataSource.groovy가 Grails에서 평가되기 전에 어떻게 코드를 실행할 수 있습니까?

추가 정보 :

내가 Grails가없이이를하고 있던 경우에, 나는 아마 된 DataSourceFactory 봄 콩을 만들 것입니다. 이 bean과 다른 코드 사이의 의존성을 선언하여 모든 것이 초기화 될 때 명시 적으로 제어 할 수 있습니다. 내 DataSourceFactory 클래스 'PostConstruct 메서드 내에서 필요한 DB 연결 정보를 얻기 위해 회사의 속성/구성 프레임 워크를 호출하는 데 필요한 코드를 실행합니다.

그래서, 제가 찾고있는 것은 JDBC 데이터 소스가 어떻게 구성되는지에 대한 완전한 (또는 적어도 더 많은) 프로그램적인 제어입니다.

+1

어떤 종류의 코드를 평가하고 싶습니까? DataSource.groovy는 설정 파일 일 뿐이며, 기본적으로 grails의 다른 부분에서 사용되는 key => value 쌍만 정의합니다. – kenota

+0

DB 설정이 복잡한 방식에 대해 좀 더 자세히 알면 도움이됩니다. 후에하는 일을하는 쉬운 방법이있을 수 있습니다. – cdeszaq

답변

1

DataSource.groovy은 실행 가능한 그루비 파일로 평가됩니다. 처음부터 바로 메소드를 호출하는 것이 어떻습니까? 예 :

MyApp.doExtraDatabaseConfig() 

dataSource { 
    ... 
} 
+0

그 트릭을 할 수도 있습니다. 데이터 소스 파일에서 직접 호출 한 부트 스트랩 코드의 일부를 지저분하게 만드는 것이 조금 걱정 스럽지만 내 유일한 선택입니다. –

관련 문제