首頁技術(shù)文章正文

百度LBS使用教程詳解[java培訓(xùn)]

更新時(shí)間:2020-03-15 來源:黑馬程序員 瀏覽量:

百度地圖上收錄的是常見的位置信息,而如果有一些特殊的未被百度地圖收錄的地點(diǎn),百度提供的LBS 云服務(wù)可以讓我們很方便的自己去收錄地點(diǎn)信息(如景點(diǎn)的衛(wèi)生間等)。推薦了解黑馬程序員java培訓(xùn)課程。

1. LBS 云簡(jiǎn)介

LBS 是百度地圖針對(duì)LBS 開發(fā)者推出的平臺(tái)級(jí)服務(wù),結(jié)合已有的地圖API 和SDK 服務(wù),通過開放服務(wù)端存儲(chǔ)和計(jì)算能力,提供海量位置數(shù)據(jù)的實(shí)時(shí)存儲(chǔ)、檢索、展示一體化解決方案。

基于LBS 實(shí)現(xiàn)1:云端存儲(chǔ)2、云端檢索3、云地理編碼4、云地理逆編碼

百度LBS云使用介紹01


2. LBS 注冊(cè)和密鑰申請(qǐng)

百度地圖開放平臺(tái)網(wǎng)址

http://lbsyun.baidu.com/

使用LBS 云服務(wù)必須擁有百度賬號(hào),登陸賬號(hào)后申請(qǐng)開啟LBS 云服務(wù)功能,要使用LBS云服務(wù)必須申請(qǐng)密鑰。

百度LBS云使用介紹02


2.1 密鑰應(yīng)用類型

百度LBS云使用介紹03


選擇需要的應(yīng)用類型,對(duì)于后端申請(qǐng)服務(wù)端; 通過js 代碼就申請(qǐng)瀏覽器端。

2.2 勾選需要的服務(wù)

百度LBS云使用介紹04


2.3 設(shè)置檢驗(yàn)方式和白名單

百度LBS云使用介紹05


此處ip 地址格式輸錯(cuò)會(huì)有提示(以上是服務(wù)端配置)

瀏覽器端稍有不同

百度LBS云使用介紹06

3. LBS 配額管理

百度針對(duì)LBS 云服務(wù)提供了一定的配額,超過免費(fèi)額度就要花錢去買

百度LBS云使用介紹07

這個(gè)功能提供流量圖和余額明細(xì),管理起來還是很方便。一般測(cè)試開發(fā)和小規(guī)模試用是足夠了,這點(diǎn)百度還做的不錯(cuò)。

4. LBS 資料下載

百度提供了詳細(xì)的開發(fā)說明,可下載文檔和代碼例子

百度LBS云使用介紹08

注意LBS 云分為云存儲(chǔ)和云檢索

云存儲(chǔ)是負(fù)責(zé)新建,刪除和修改表的類似數(shù)據(jù)庫的DML 語句,云檢索才是真正查詢數(shù)據(jù)的。

5. LBS 建表和插入數(shù)據(jù)

LBS 可以直接頁面上根據(jù)百度地圖插入數(shù)據(jù)

點(diǎn)擊左側(cè)

百度LBS云使用介紹10


可以點(diǎn)右側(cè)創(chuàng)建按鈕新建表

1. 創(chuàng)建表名

百度LBS云使用介紹11

2. 設(shè)置字段

百度LBS云使用介紹12


LBS 的表中設(shè)置有默認(rèn)字段,除默認(rèn)字段也可手動(dòng)添加

百度LBS云使用介紹14


3. 發(fā)布

如果要啟用,就勾選

百度LBS云使用介紹16


2.添加信息

點(diǎn)擊表數(shù)據(jù)管理

百度LBS云使用規(guī)則15

根據(jù)十字星在地圖上選點(diǎn),然后填寫信息(一般經(jīng)度,緯度不用變)

百度LBS云使用介紹15


保存后就進(jìn)數(shù)據(jù)存入

百度LBS云介紹18

3. 后臺(tái)代碼調(diào)用

參考文檔
@Test
// 建立表geotable
public void demo1() throws ClientProtocolException, IOException {
        // 1、創(chuàng)建httpClient 對(duì)象
        HttpClient client = HttpClients.createDefault();
       // 2、請(qǐng)求對(duì)象
        HttpPost httpPost = new HttpPost(
        "http://api.map.baidu.com/geodata/v3/geotable/create");
        // 3、綁定參數(shù)
        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
        nameValuePairs.add(new BasicNameValuePair("name", "javaee41"));
        nameValuePairs.add(new BasicNameValuePair("geotype", "1"));
        nameValuePairs.add(new BasicNameValuePair("is_published", "1"));
        nameValuePairs.add(new BasicNameValuePair("ak","a9F3QkTyeoyKAt2iR5irH2xRzWSBaqzk"));
       // name=mytable4&geotype=1
       httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs,Charsets.UTF_8));
       // 4、發(fā)送請(qǐng)求
      HttpResponse httpResponse = client.execute(httpPost);
       // 5、打印結(jié)果數(shù)據(jù)
       HttpEntity httpEntity = httpResponse.getEntity();
        System.out.println(EntityUtils.toString(httpEntity));
@Test
// 查詢表
public void demo2() throws ClientProtocolException, IOException {
       // 1、創(chuàng)建httpClient 對(duì)象
       HttpClient client = HttpClients.createDefault();
       // 2、請(qǐng)求對(duì)象
       HttpGet httpGet = new HttpGet("http://api.map.baidu.com/geodata/v3/geotable/list?ak=a9F3QkTyeoyKAt2iR5irH2xRzWSBaqzk");
       // 3、發(fā)送請(qǐng)求
       HttpResponse httpResponse = client.execute(httpGet);
       // 4、打印結(jié)果數(shù)據(jù)
       HttpEntity httpEntity = httpResponse.getEntity();
       System.out.println(EntityUtils.toString(httpEntity));
}
@Test
// 查詢表
public void demo4() throws ClientProtocolException, IOException {
       // 1、創(chuàng)建httpClient 對(duì)象
       HttpClient client = HttpClients.createDefault();
       // 2、請(qǐng)求對(duì)象
       HttpGet httpGet = new HttpGet("http://api.map.baidu.com/geodata/v3/column/list?ak=a9F3QkTyeoyKAt2iR5irH2xRzWSBaqzk&geotable_id=191874");
      // 3、發(fā)送請(qǐng)求
      HttpResponse httpResponse = client.execute(httpGet);
     // 4、打印結(jié)果數(shù)據(jù)
     HttpEntity httpEntity = httpResponse.getEntity();
     System.out.println(EntityUtils.toString(httpEntity));
}
@Test
// 查詢表
public void demo5() throws ClientProtocolException, IOException {
        // 1、創(chuàng)建httpClient 對(duì)象
        HttpClient client = HttpClients.createDefault();
        // 2、請(qǐng)求對(duì)象
        HttpGet httpGet = new HttpGet("http://api.map.baidu.com/geodata/v3/poi/list?ak=a9F3QkTyeoyKAt2iR5irH2xR
zWSBaqzk&geotable_id=191874");
        // 3、發(fā)送請(qǐng)求
        HttpResponse httpResponse = client.execute(httpGet);
        // 4、打印結(jié)果數(shù)據(jù)
        HttpEntity httpEntity = httpResponse.getEntity();
        System.out.println(EntityUtils.toString(httpEntity));
}


猜你喜歡

JVM內(nèi)存模型詳細(xì)介紹

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!