iBatis Datenbankwechsel

Status
Nicht offen für weitere Antworten.
G

Gast

Gast
Hallo,

ich habe für mein iBatis- Mapping die untere xml- Datei zur Konfiguration, in der DatenbankKonfig/DatenbankKonfig.properties stehen der driver der DB, username, passwort,

Ich möchte jetzt, nachdem meine Application mit der unteren Defaultkonfiguration gestartet wurde, eine andere Datenbank über einen JFileChooser aussuchen können und meine Applikation an dies Datenbank zu binden,

ist das irgendwie mit iBatis möglich oder muss ich eine neue properties- und eine XML- Datei generieren und das ganze neu laden(wie auch immer)? das ganze ich ja auch noch in einer *.jar drinnen, dann müsste ich das ganze auch noch in eine jar geben,

Gibts eine möglichkeit, das einfacher zu realisieren?


Code:
<sqlMapConfig>
<properties resource="DatenbankKonfig/DatenbankKonfig.properties" />	
	<settings
		cacheModelsEnabled		="true"
		enhancementEnabled		="true"
		lazyLoadingEnabled		="true"
		maxRequests				="32"
		maxSessions				="10"
		maxTransactions			="15"
		useStatementNamespaces	="false"
	/>
	<typeAlias alias="order" type="testdomain.Order"/>

	<transactionManager type="JDBC" >
		<dataSource type="SIMPLE">
			<property name="JDBC.Driver" 					value="${driver}"	/>
			<property name="JDBC.ConnectionURL" 			value="${url}"		/>
			<property name="JDBC.Username" 					value="${username}"	/>
 
G

Guest

Gast
ich steck da in der klemme, wenn ich die iBatis- Konfig- Datei aus einer *.jar Datei beim starten lade (Resources.getResourceAsReader) dann kann ich die jar- Datei nicht entzippen und in ein File etwas hineinschreiben und wieder zippen, da ich aAbhängigkeiten zu dieser jar- Datei habe,

Hat jemand eine Idee, wie ich da aus der Klemme komme?

So schaut die Klasse mit der Abhängigkeit aus
Code:
package net.jank.ppos.traceaufzeichnung.Database;

import com.ibatis.sqlmap.client.*;
import java.io.Reader;
import com.ibatis.sqlmap.*;
import com.ibatis.common.resources.Resources;

public class AppSQLConfig {
    private static SqlMapClient sqlMap;   
    private static Reader reader;  
   
    static {
            try {                
                String resource = "DatenbankKonfig/SqlMapConfig.xml";
                reader = Resources.getResourceAsReader(resource);
                sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);                
                } 
            catch (Exception e) 
                {
                e.printStackTrace();
                }
            }  
    
    public static SqlMapClient getSqlMapInstance () 
        {
        return sqlMap;
        }
    }
 
G

Guest

Gast
kennt keiner eine Möglichkeit, die Datenbank zur laufzeit zu vereändern? hab zwar bis jetzt noch nichts gefunden aber das ist ja meiner Meinung nach nicht so abwegig, oder doch?

schönen Tag noch,
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben