2012-01-17 43 views
3

我正在使用JPA訪問其編碼設置爲ISO-8859-1的Oracle數據庫。如何在使用JPA時設置Oracle NLS_LANG

如何使用JPA設置NLS_LANG以正確的編碼接收數據?

我懷疑它應該設置在持久化上下文XML中的某個地方。

+0

您應該**不要**依賴NLS_LANG的特殊值(以及隨附的隱式轉換)。使用適當的格式掩碼,例如在'to_date()'或'to_char()' –

回答

2

JDBC驅動程序處理所有事情。它知道編碼值是什麼,並使用適當的編碼,而不需要採取任何行動。

+1

AFAIK驅動程序使用JVM的默認語言環境(可以使用'-Duser.locale'設置) - 但仍然:沒有生產代碼應該依賴於特定的設置對於NLS_LANG –

+0

你可能是對的。我的回答更關注編碼。我會編輯它以使其更清晰。 –

+0

謝謝。我導致特殊字符自己錯了。因此不需要再嘗試改變連接設置。 –

相關問題