day26 IP查询项目
一、項(xiàng)目介紹
1.背景
根據(jù)IP得到位置,加標(biāo)簽
進(jìn)行大數(shù)據(jù)分析,比如淘寶推薦等提供優(yōu)質(zhì)數(shù)據(jù)
www.ip.cn 等 查詢IP
2.需求
IP 分析 歸屬地信息 , 查找在毫秒內(nèi)完成
IP地址庫(kù),公網(wǎng)都是開放的
IANA : 國(guó)際組織,負(fù)責(zé)公網(wǎng)IP維護(hù)分發(fā)
3.技術(shù)棧
Eclipse ,JavaSE中面向?qū)ο蟆O流、二分法算法、Base64編碼、工具類封裝
4.目標(biāo)
通過開發(fā)IP地址歸屬地查詢平臺(tái),我們需要對(duì)JavaSE綜合技術(shù)有所提升,增強(qiáng)實(shí)戰(zhàn)能力。學(xué)習(xí)完該項(xiàng)目我們應(yīng)該具備如下能力:
1 面向?qū)ο蟪绦蛟O(shè)計(jì)
2 工具類封裝與使用寫法
3 文件IO流
4 字符串處理
5 二分法查找
6 IP地址的不同形式的使用
二、主要思路
1 程序中讀取內(nèi)容
2 解析IP字符串,進(jìn)行結(jié)構(gòu)化處理
3 封裝工具類
4 接口API
入?yún)?: IP
出參 : 歸屬地
三、主要思路
應(yīng)用開發(fā)類項(xiàng)目
C/S結(jié)構(gòu),需要有特定的客戶端,比如QQ,微信,eclipse
Web開發(fā)類項(xiàng)目
B/S結(jié)構(gòu)為主.通過網(wǎng)頁(yè)形式訪問的在線系統(tǒng),比如各類官網(wǎng),各類管理系統(tǒng)等
中小型項(xiàng)目研發(fā)標(biāo)準(zhǔn)流程
1 需求概述-需求描述:說清楚你為什么做這個(gè)項(xiàng)目
根據(jù)IP獲取歸屬地
2 需求分析 :
根據(jù)需求概述,用技術(shù)角度考慮一下,是否可行
三方面 : 1 輸入 , 2 輸出 , 3 必備物料(地址庫(kù))
輸入 : 給定一個(gè)任意的合法IP地址
輸出 : 返回IP地址對(duì)應(yīng)的地址庫(kù)
3 開發(fā)步驟
1 讀取IP地址庫(kù)
2 解析地址庫(kù)的信息,進(jìn)行結(jié)構(gòu)化處理
3 將對(duì)象保存到list中
4 進(jìn)行二分法查找,提高效率
5 對(duì)外提供訪問的接口
6 測(cè)試
4 細(xì)節(jié)開發(fā)與風(fēng)險(xiǎn)控制
5 BUG修復(fù),調(diào)優(yōu),標(biāo)準(zhǔn)化
6 正式上線
7 項(xiàng)目總結(jié)-項(xiàng)目復(fù)盤
四、代碼開發(fā)
1 無腦讀取文件
2… 文本文件讀取工具類
抽象工具類
1 通過編碼,實(shí)現(xiàn)輸入與輸出
2 抽象輸入與輸出,形成方法入?yún)⒑统鰠?br /> 3 工具類代碼實(shí)現(xiàn)并測(cè)試
2.1 工具類編碼
2.2 工具類測(cè)試
public class TestFileIO_02 {public static void main(String args[]){//1.文件路徑String ipLibrayPath="ip_location_relation.txt";String encoding="UTF-8";try{List<String> lineList=FileOperatorUtile.getLineList(ipLibrayPath,encoding);for(String string:lineList){System.out.println(string);}}catch(IOException e){e.printStackTrace();}} }結(jié)構(gòu)化 : 當(dāng)我們知道第一個(gè)數(shù)據(jù)的格式的時(shí)候,那么第二個(gè)的數(shù)據(jù)格式就已經(jīng)確定了,有規(guī)律可循,方便操作
根據(jù)非結(jié)構(gòu)化數(shù)據(jù),找到對(duì)應(yīng)的規(guī)則,并創(chuàng)建對(duì)應(yīng)的實(shí)體類進(jìn)行封裝,轉(zhuǎn)換為結(jié)構(gòu)化數(shù)據(jù)
4.1 實(shí)體類
總結(jié)
以上是生活随笔為你收集整理的day26 IP查询项目的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: stm32f103不同系列之间的代码移植
- 下一篇: SAP OData $batch pro