bjtdeyx

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            1 隨筆 :: 1 文章 :: 3 評(píng)論 :: 0 Trackbacks
          介紹通過IP地址查找ip具體的城市和運(yùn)營(yíng)商!
          通過QQIP地址庫(kù):QQWry.Dat編寫
          以下只貼出少量代碼,請(qǐng)各位直接到本人的網(wǎng)盤下載完整版(代碼+最新QQWry.Dat),項(xiàng)目可直接運(yùn)行!
          QQWry.Dat大小為8.79M,項(xiàng)目大小僅390k,直接運(yùn)行IPTest.java類即可!
          此代碼可用于各種java項(xiàng)目和jsp、j2ee項(xiàng)目
          注意:QQWry.Dat只需文件放在對(duì)應(yīng)的目錄下即可。

          網(wǎng)盤下載地址:http://115.com/file/dplk9jqn#


          1. public class IPSeeker {  
          2.     //純真IP數(shù)據(jù)庫(kù)名  
          3.     private String IP_FILE="QQWry.Dat";  
          4.     //保存的文件夾  
          5.     private String INSTALL_DIR="f:/qqwry";  
          6.       
          7.       
          8.     // 一些固定常量,比如記錄長(zhǎng)度等等  
          9.     private static final int IP_RECORD_LENGTH = 7;  
          10.     private static final byte REDIRECT_MODE_1 = 0x01;  
          11.     private static final byte REDIRECT_MODE_2 = 0x02;  
          12.       
          13.     // 用來做為cache,查詢一個(gè)ip時(shí)首先查看cache,以減少不必要的重復(fù)查找  
          14.     private Map<String, IPLocation> ipCache;  
          15.     // 隨機(jī)文件訪問類  
          16.     private RandomAccessFile ipFile;  
          17.     // 內(nèi)存映射文件  
          18.     private MappedByteBuffer mbb;  
          19.     // 起始地區(qū)的開始和結(jié)束的絕對(duì)偏移  
          20.     private long ipBegin, ipEnd;  
          21.     // 為提高效率而采用的臨時(shí)變量  
          22.     private IPLocation loc;  
          23.     private byte[] buf;  
          24.     private byte[] b4;  
          25.     private byte[] b3;  
          26.       
          27.     public IPSeeker(String fileName,String dir)  {  
          28.         this.INSTALL_DIR=dir;  
          29.         this.IP_FILE=fileName;  
          30.         ipCache = new HashMap<String, IPLocation>();  
          31.         loc = new IPLocation();  
          32.         buf = new byte[100];  
          33.         b4 = new byte[4];  
          34.         b3 = new byte[3];  
          35.         try {  
          36.             ipFile = new RandomAccessFile(IP_FILE, "r");  
          37.         } catch (FileNotFoundException e) { 
          38. ...........
          39. .............
          40. ................
          posted on 2012-02-21 13:09 心碎逍遙 閱讀(2712) 評(píng)論(2)  編輯  收藏

          評(píng)論

          # re: java jsp 獲取 純真ip地址庫(kù)(ip獲取城市) 2012-02-25 10:55 smilence
          我也寫了個(gè)獲取地理位置的方法,見http://freedomsmile.net/ba/article?id=bd3f3e72346b6c8401346b8b1ed10003  回復(fù)  更多評(píng)論
            

          # re: java jsp 獲取 純真ip地址庫(kù)(ip獲取城市)[未登錄] 2012-02-27 17:36 attend
          多線程環(huán)境BUG。  回復(fù)  更多評(píng)論
            


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 乐平市| 鸡泽县| 英山县| 葵青区| 达拉特旗| 新绛县| 瓦房店市| 浦北县| 嘉义县| 四平市| 安溪县| 颍上县| 金昌市| 隆尧县| 行唐县| 区。| 邯郸县| 温宿县| 杭锦旗| 大埔区| 南江县| 丹江口市| 汝州市| 达日县| 石渠县| 招远市| 治多县| 临颍县| 安福县| 琼结县| 太仆寺旗| 仁寿县| 东辽县| 新津县| 敦煌市| 瑞金市| 竹溪县| 井研县| 静宁县| 称多县| 和田县|