# Wie kann ich eine Datenbank Connection aus XML-Datei lesen!



## Hunin (31. Mai 2008)

Hi zusammen,

ich hab folgendes Problem:

Ich habe in einer Java-Klasse momentan eine Hardcoded Datenbank Connection und möchte diese Softcoded machen
indem ich die Werte aus einer XML Datei beziehe.

Ich hab bis dato recht wenig mit XML gemacht und hoffe das mir hier vielleicht einer helfen kann.


Momentan habe ich die Werte zum Connect zur DB so in meiner Klasse:


```
protected String jdbcSqlDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
    protected String jdbcurl = "jdbc:sqlserver://192.168.18.128:1433;databaseName=RR_Database;";
    protected String user = "user=RR_Admin;";
    protected String pw = "password=12345;";

....


      Class.forName(jdbcSqlDriver).newInstance();
      String connectionUrl = jdbcurl+user+pw;
      Connection con = DriverManager.getConnection(connectionUrl);

....
```


Es funktioniert auch sehr gut. Nur würde ich gerne vom Hardcoded wegkommen.


Dank euch.


----------



## javasimon (31. Mai 2008)

frag doch mal google: http://www.google.ch/search?source=ig&hl=de&rlz=&q=java+properties+xml&btnG=Google-Suche&meta=


----------



## Niki (2. Jun 2008)

Falls du dir nicht umbedingt xml antun möchtest kannst du ja auch die Parameter einfach als start-Argumente deiner Applikation mitgeben. Könnte dann so aussehen:

```
public static void main(String[] args){
  DBLoginInfo loginInfo = getDBLoginInfo(args);
}

private static DBLoginInfo getDBLoginInfo(String[] args){
  DBLoginInfo dbInfo = new DBLoginInfo();

  for(String s : args){
    String[] keyValuePair = s.split("=");
    String key = keyValuePair[0];
    String value = keyValuePair[1];
    if("driver".equalsIgnoreCase(key)){
      dbInfo.setDriver(value);
    } else if("url".equalsIgnoreCase(key)){
      dbInfo.setUrl(value);
    }
    //das ganze noch für user und pwd    
  }

  return dbInfo;
}

public static class DBLoginInfo{
  private String driver = null;
  private String url = null;
  private String user = null;
  private String pwd = null;

  //getter und setter....
}
```


----------

