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

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

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

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

1. LBS 云簡介

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

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

百度LBS云使用介紹01


2. LBS 注冊和密鑰申請

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

http://lbsyun.baidu.com/

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

百度LBS云使用介紹02


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

百度LBS云使用介紹03


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

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

百度LBS云使用介紹04


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

百度LBS云使用介紹05


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

瀏覽器端稍有不同

百度LBS云使用介紹06

3. LBS 配額管理

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

百度LBS云使用介紹07

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

4. LBS 資料下載

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

百度LBS云使用介紹08

注意LBS 云分為云存儲和云檢索

云存儲是負(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)字段也可手動添加

百度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. 后臺代碼調(diào)用

參考文檔
@Test
// 建立表geotable
public void demo1() throws ClientProtocolException, IOException {
        // 1、創(chuàng)建httpClient 對象
        HttpClient client = HttpClients.createDefault();
       // 2、請求對象
        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ā)送請求
      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 對象
       HttpClient client = HttpClients.createDefault();
       // 2、請求對象
       HttpGet httpGet = new HttpGet("http://api.map.baidu.com/geodata/v3/geotable/list?ak=a9F3QkTyeoyKAt2iR5irH2xRzWSBaqzk");
       // 3、發(fā)送請求
       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 對象
       HttpClient client = HttpClients.createDefault();
       // 2、請求對象
       HttpGet httpGet = new HttpGet("http://api.map.baidu.com/geodata/v3/column/list?ak=a9F3QkTyeoyKAt2iR5irH2xRzWSBaqzk&geotable_id=191874");
      // 3、發(fā)送請求
      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 對象
        HttpClient client = HttpClients.createDefault();
        // 2、請求對象
        HttpGet httpGet = new HttpGet("http://api.map.baidu.com/geodata/v3/poi/list?ak=a9F3QkTyeoyKAt2iR5irH2xR
zWSBaqzk&geotable_id=191874");
        // 3、發(fā)送請求
        HttpResponse httpResponse = client.execute(httpGet);
        // 4、打印結(jié)果數(shù)據(jù)
        HttpEntity httpEntity = httpResponse.getEntity();
        System.out.println(EntityUtils.toString(httpEntity));
}


猜你喜歡

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

分享到:
在線咨詢 我要報名
和我們在線交談!