[英]Java: How to convert MySQL DECIMAL(39,0) IP address to String
因此,我被告知這里的DBA將在我們的MySQL數據庫的DECIMAL(39,0)字段中存儲IP地址。
我該如何將其轉換為String並傳遞給其他應用程序?
注意:我們的數據庫無法再承擔更多的負載,因此需要在Java應用程序中完成盡可能多的工作。
注意2:必須支持IPv6。
采用
INET_NTOA
例如:SELECT INET_NTOA(num)AS ipaddr;
和
INET_ATON
例如:INSERT INTO addrTbl VALUES(...,INET_ATON('192.168.0.1'),...)
之所以可行,是因為IPv4最初旨在將IP地址定義為32位數字。 點十進制表示法是為了便於閱讀。
更新
如果您希望在Java中執行從數字到點十進制表示法的轉換,則MindProd站點提供了一個示例 。
問題解決了,我說服數據庫人員將其存儲為VARCHAR。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.