2016-05-23 8 views
0

Ist es möglich, eine Konfigurationsdatei mit den DB-Verbindungsdetails außerhalb des Hibernate-Projekts zu verschieben und eine Verbindung herzustellen?Konfigurationsdatei für die Ruhezustandseigenschaften außerhalb des Projekts verschieben?

Meine aktuelle Konfiguration ist wie folgt, aber ich möchte meine Datei von außerhalb des Projekts verschieben und immer noch mit meinem data sources verbinden. Wie kann ich das tun?

@Configuration 
@EnableTransactionManagement 
@PropertySource({"classpath:hibernate.properties"}) 
@EnableJpaRepositories(basePackages = "com.my.packages", entityManagerFactoryRef = "schemaOneManagerFactory", transactionManagerRef = "schemaOneTransactionManager") 
public class SchemaOneDataSourceConfig 
{ 

//configuration methods 

} 

Muss ich die Zeile ändern: @PropertySource({"classpath:hibernate.properties"})?

Antwort

1

Aus der JavaDocs von PropertySource

Indicate the resource location(s) of the properties file to be loaded. For example, "classpath:/com/myco/app.properties" or "file:/path/to/file".

Sie müssen nur einen Präfix ändern file:

@PropertySource({"file:/path/to/hibernate.properties"}) 
+0

danke, sind die doppelten \\ Zeichen benötigt, um die Zeichen in der Zeichenfolge zu entkommen? – java123999

+0

@ java123999 Verwenden Sie einfach '/' anstelle von \\. –

+0

Wenn ich das mache, bekomme ich "Klassenpfad Ressource kann nicht geöffnet werden, weil es nicht existiert"? Danke – java123999