2011-07-28 34 views
0

データベースに接続するためのデータを持つプロパティファイルがあります。また、私は休止状態の設定ファイルを持っています。私はプロパティファイルからプロパティを持つハイバネートファイルを設定したいと思います。プロパティを読み込んでXMLファイルに挿入するにはどうすればよいですか? System.getProperty(name)でプロパティを読み取ることができます。プロパティファイルを読み込んでXMLファイルにデータを挿入するにはどうすればよいですか?

ありがとうございます!

答えて

1

これは良いスタートする必要がありますする可能性があります。

File xmlfile = null; 
File propertiesfile = null; 
Properties p = new Properties(); 
p.load(new FileReader(propertiesfile)); 

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 
DocumentBuilder db = dbf.newDocumentBuilder(); 
Document parse = db.parse(xmlfile); 
DOMSource domSource = new DOMSource(parse); 
Node root = domSource.getNode(); 
for (Object key : p.keySet()) { 
    String sKey = "" + key; 
    root.setTextContent(root.getTextContent()+sKey + "=" + p.getProperty(sKey)); 
} 
TransformerFactory tFactory = TransformerFactory.newInstance(); 
Transformer transformer = tFactory.newTransformer(); 
transformer.transform(domSource, new StreamResult(xmlfile)); 
0

あなたはこれを繰り返し行う必要がある場合を除き、私は、この古代のプログラミング技術を使用したい:

  • オープン・プロパティはプロパティでプロパティが
  • CtrlキーC
  • ファイル
  • ハイライトを提出
  • hibernate config xmlファイルを開く
  • プロパティ値の場所にinsert caratを見つける
  • CtrlキーV
+0

正しいが、役に立たない---ああでも修正していない:これは私がxmlファイルを持っていた構成 – Ralph

0

私はドキュメントの権利を理解していれば、それは箱から出して作業する必要があります:

Hibernateリファレンス

3.7. XML configuration file

代替構成へのアプローチは完全なを指定することですの設定をhibernate.cfg.xmlという名前のファイルに作成します。このファイルは、hibernate.propertiesファイルの代わりに として使用することも、両方とも が存在する場合は、プロパティを上書きすることもできます。

したがって、ハイバネート・プロパティー・ファイルとhibernate.cfg.xmlのみが必要です。 hibernate.cfg.xmlに値を設定しないと、それらはプロパティファイルから取得されます。 - 私はそれを証明していませんでしたが、それが私がドキュメントを理解する方法です。

+0

ではなく、データベース、ユーザーおよびパスワードのデータプロパティファイルから読み込んでXMLファイルにロードしたいのですが、 –

+0

@Jose Hdez:これは私が言っていることです:この3つのプロパティを 'hibernate.cfg.xml'に追加せず、代わりに'hibernate.properties'ファイル – Ralph

関連する問題