2014-06-11 6 views
1

최대 절전 모드에 익숙하다. 최대 절전 모드를 사용하여 쿼리를 실행 중이다. 내가 알고 싶은 것은 DB와 스키마가 연결되어 있다는 것을 알 수있는 방법이 있다면 ?? 이것을 할 수있는 방법이 있습니까? Hibernate 세션이 사용하는 스키마

String query = "select name , id from employee"; 
    org.Hiberanate.Session hibernateSession =/*getting session from somewhere*/; 
    org.Hibernate.Query queryObject = hibernateSession.createQuery(query); 
    List<Object[]> objects = (List<Object[]>) queryObject.list(); 

나는 웹을 통해 보면서 내가이 Session 객체에서 connection을 얻을 후 DB를 알고 해당 연결의 MetaData를 사용할 수 있음을 발견했다. 하지만 그것은 스키마 이름을 제공하지 않으며 단지 DB 이름으로 Oracle을 제공합니다. Oracle에 연결되어있는 특정 DB를 원했습니다.

답변

0

일반적으로 내 프로젝트에서 내 database.properties에서이를 정의합니다. 최대 절전 모드에서 스프링을 사용하면 내 파일에서이를 볼 수 있습니다.이 파일에서 내 'threeminute'스키마를 예로들 수 있습니다.

jdbc.url=jdbc:mysql://localhost:3306/threeminute 

체크 아웃 3.3 here이 당신이 말한 것처럼 실제로 내가 스프링을 사용하고

+0

를 찾고 있습니다,하지만 것은 내가 3에 differnt 스키마를 가지고 내가 그 3 jdbc.url을 무엇을 쓸 경우 스키마 및 일부 조건에 따라이 세 가지 URL 중 하나를 선택하십시오. 난 단지 wheather 나는 올바른 스키마에 연결되어 있는지 확인하고 싶습니다. 그래서 자바에서이 정보를 출력하는 방법을 알고 있다면 도움이 될 것입니다. –

+0

@the_samurai 나는이 질문에 당신을 의뢰 한 다음 많은 도움을 줄 수 있다고 대답 할 수 있습니다. 기본적으로 여러 개의 구성 파일을 사용합니다. 그런 다음 SessionFactory를 사용하여 맵핑 한 다음, 적절한 쿼리를 위해 세션 팩토리 x 또는 y를 사용하는 간단한 if/else를 설정할 수 있다는 것을 기반으로합니다. http://stackoverflow.com/questions/14133541/how-to-use-hibernate-for-two-different-schemas-in-a-single-database – gcalex5

관련 문제