2013-07-05 23 views
0

好吧,我知道已經發布了很多關於從IP地址獲取位置數據的問題,但我的問題有點獨特;再加上我對這些討論中發佈的概念還沒有足夠的理解,以便將我的特定難題拼湊在一起。如何將IP地址從數據庫傳遞到地理位置並返回數據?

在我的Java程序中,我從包含攻擊IP的安全威脅信息的數據庫中提取數據。我想在地理定位器中使用該攻擊IP地址,然後將其顯示在我的GUI中。

大多數涉及這個IP位置概念的其他問題都涉及到javascript,這讓我有點遺漏。我也看到geoGoogle API推薦,但它似乎好像他們現在有一個限制:http://geo-google.sourceforge.net/index.html

什麼是最好的方式去做這件事,或者什麼工具是最適合的?我是一名初學者編程人員,我擔心在處理這類問題/任務方面缺乏經驗。

回答

0

由於您使用的是Java,因此您可能需要查看MaxMind的免費GeoLite database。由於Java API直接從數據庫文件中讀取數據,因此不需要SQL服務器來使用它。您可以直接從MaxMind網站或從Maven Central Repository下載API。

這裏是你如何使用GeoIP的Java API的一個例子:

LookupService ls = new LookupService("/usr/local/share/GeoIP/GeoIPCity.dat"); 
Location location = cl.getLocation("213.52.50.8"); 
System.out.println(location.countryName); 
System.out.println(location.city); 
... 

你也可以看到this tutorialthis example

MaxMind還提供paid web services,如果你喜歡去那條路線。