我需要將特定於語言的字符保存在xml數據類型的列中,因爲XML是我檢索它時希望的格式。就在堅持之前,我在XML中看到俄文字符,但在堅持使用JPA之後實際存儲的內容就像是'??????'。需要注意的是,要求是保持列數據類型爲xml。我盡力在網上找到任何東西,但沒有成功。如果有人能幫我解決這個問題。無法將語言特定字符保存到xml數據庫的數據庫列中
我有一個函數,它將包含語言字符的地圖作爲其參數之一。該函數將地圖轉換爲XML格式並返回字符串。然後這被持久保存到數據庫中:
entityManager.persist(X)
,其中X是具有映射到它的一個XML字符串的實體對象的屬性。
private String toXML(Map<String, String> map, String root) {
StringBuilder xmlSB = new StringBuilder(OPEN_NODE);
// Logic to convert map to XML
return xmlSB.toString();
}
緊接在entityManager.persist(X)之後,我在數據庫表中看到的條目就像'????'在我的情況下替換所有的俄羅斯人物,休息一切仍然是一樣的。
您可以添加底層的SQL和表嗎?基本上,您發送的是非Unicode字符串,或者它不是真正的XML列。例如,http://stackoverflow.com/a/6857945/27535或http://stackoverflow.com/a/1694267/27535或http://stackoverflow.com/a/4767737/27535 – gbn
什麼是字符集並整理您使用的數據庫 –
@gbn我有表X列,與xml數據類型,我不想要更改數據類型爲nvarchar。我很感謝你的幫助。謝謝 – abhimanyu435