我有一個數據屬性文件連接數據庫。另外,我有一個休眠配置文件。我想用屬性文件中的屬性來配置hibernate文件。我如何讀取這些屬性並將它們插入到XML文件中?我可以通過System.getProperty(name)讀取屬性。如何讀取屬性文件並將數據插入到XML文件中?
謝謝!
我有一個數據屬性文件連接數據庫。另外,我有一個休眠配置文件。我想用屬性文件中的屬性來配置hibernate文件。我如何讀取這些屬性並將它們插入到XML文件中?我可以通過System.getProperty(name)讀取屬性。如何讀取屬性文件並將數據插入到XML文件中?
謝謝!
也許這應該是一個良好的開端:
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));
除非你有反覆這樣做,我會用這個古老的編程技術:
如果我理解文檔的權利,應該是工作的開箱:
Hibernate參考
替代配置方法是指定一個完整的 配置在名爲hibernate.cfg.xml的文件中。這個文件可以被用作 作爲hibernate.properties文件的替代品,或者如果兩者都是 存在,就可以覆蓋屬性。
所以你只需要hibernate屬性文件和hibernate.cfg.xml。如果您沒有在hibernate.cfg.xml中設置值,那麼它們將從屬性文件中獲取。 - 我沒有證明,但這是我理解文檔的方式。
我在XML文件,而是從數據庫,用戶和密碼數據我想從屬性文件中讀取它並將其加載到XML文件 –
@Jose Hdez:是的,這就是我所說的:不要將這3個屬性添加到'hibernate.cfg.xml'中,而是將它放在'hibernate.properties'文件 – Ralph
正確的,但沒用---哦,甚至不正確:這不是配置 – Ralph