最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot + mongodb 通過經(jīng)緯度坐標(biāo)匹配平面區(qū)域的方法

 更新時間:2021年10月29日 10:57:42   作者:失策狗  
這篇文章主要介紹了springboot + mongodb 通過經(jīng)緯度坐標(biāo)匹配平面區(qū)域的方法,文中通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

java api 自帶的mongodb實(shí)體無法滿足環(huán)狀多邊形的區(qū)域匹配(大概是我沒用對方法可能)所以我們要自定義一個空間坐標(biāo)類型

廢話不多說 上代碼

/**
 *
 * @author cy
 */
@Configuration
@ReadingConverter
public class CustomReadGeoJsonConverter implements Converter<Document, CustomGeoJson> {

    @Override
    public CustomGeoJson convert(Document document) {
        CustomGeoJson geoJson = new CustomGeoJson();
        geoJson.setType(document.get(GeoJsonConstant.TYPE, String.class));
        geoJson.setCoordinates(document.get(GeoJsonConstant.COORDINATES, Iterable.class));
        return geoJson;
    }

}
@Configuration
public class Config {
    @Autowired
    private CustomReadGeoJsonConverter customReadGeoJsonConverter;
    @Bean
    public MongoCustomConversions customConversions() {
        List<Converter<?, ?>> converterList = new ArrayList<>();
        converterList.add(customReadGeoJsonConverter);
        return new MongoCustomConversions(converterList);
    }
}

自定義的空間坐標(biāo)類型插入實(shí)體
其中的coordinates 可自定義插入point

/**
 * @author cy
 */
@Data
public class CustomGeoJson implements GeoJson, Serializable {
    private String type;

    private Iterable<?> coordinates;

}

在我們定義的mongodb實(shí)體中加入我們自定義的類型

/**
 * @author cy
 * @since 2021-10-20
 */
@Data
@Document(collection = "demo_mdb")
public class DemoMdb implements Serializable {

    private String id;

    @GeoSpatialIndexed(type = GeoSpatialIndexType.GEO_2DSPHERE)
    private CustomGeoJson customGeoJson;
}

插入數(shù)據(jù)

public void saveData() {
 	//這里自定義point點(diǎn)集合(這里不固定格式參照mongdb官方文檔)
  	List<List<Point>> pointList = new ArrayList<>();
  	DemoMdb db=new DemoMdb();
  	//自行查看需要的類型
  	db.setType("***");
  	db.setCoordinates(pointList);
  	//mongoTemplate自行引入不做贅述
 	mongoTemplate.insert(db, DemoMdb .class);
}

查詢數(shù)據(jù)

 /**
 ** 經(jīng)度x緯度y
 **/
public List<DemoMdb> findData(String x, String y) {
        Query query = new Query(Criteria.where("customGeoJson").
        intersects(new GeoJsonPoint(Double.valueOf(x), Double.valueOf(y))));
        List<DemoMdb> dbList = mongoTemplate.find(query, DemoMdb.class);
        return dbList;
}

只是一種方法,還不完美歡迎評論指教

到此這篇關(guān)于springboot + mongodb 通過經(jīng)緯度坐標(biāo)匹配平面區(qū)域的方法的文章就介紹到這了,更多相關(guān)springboot mongodb 經(jīng)緯度內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • CentOS系統(tǒng)下MongoDB安裝及配置教程

    CentOS系統(tǒng)下MongoDB安裝及配置教程

    這篇文章主要介紹了CentOS系統(tǒng)下MongoDB安裝及配置教程,本文先是講解了一些準(zhǔn)備工作,然后講解了安裝MongoDB的服務(wù)器端和客戶端工具的步驟,需要的朋友可以參考下
    2015-01-01
  • Mongodb UPDATE使用$sort將數(shù)組重新排序的示例代碼

    Mongodb UPDATE使用$sort將數(shù)組重新排序的示例代碼

    $sort方法在$push操作過程中,修改數(shù)組元素的排序,$sort方法,必須和$each共同使用,mongodb允許用戶傳遞一個空的數(shù)組給$each方法,保證用戶無須向數(shù)組中插入元素也可以將數(shù)組進(jìn)行排序,本文給大家介紹了Mongodb UPDATE使用$sort將數(shù)組重新排序,需要的朋友可以參考下
    2024-06-06
  • Mongodb數(shù)據(jù)庫誤刪后的恢復(fù)方法(兩種)

    Mongodb數(shù)據(jù)庫誤刪后的恢復(fù)方法(兩種)

    本文給大家分享兩種方法來實(shí)現(xiàn)Mongodb數(shù)據(jù)庫誤刪后的恢復(fù),每種方法給大家介紹的都非常詳細(xì),需要的朋友參考下吧
    2018-08-08
  • MongoDB的基本操作實(shí)例詳解【服務(wù)端啟動,客戶端連接,CRUD操作】

    MongoDB的基本操作實(shí)例詳解【服務(wù)端啟動,客戶端連接,CRUD操作】

    這篇文章主要介紹了MongoDB的基本操作,結(jié)合實(shí)例形式分析了MongoDB數(shù)據(jù)庫的服務(wù)端啟動,客戶端連接,CRUD操作等基本實(shí)現(xiàn)方法與操作注意事項(xiàng),需要的朋友可以參考下
    2020-04-04
  • MongoDB詭異問題之sh.stopBalancer卡住的解決方法

    MongoDB詭異問題之sh.stopBalancer卡住的解決方法

    這篇文章主要給大家介紹了關(guān)于MongoDB詭異問題之sh.stopBalancer卡住解決的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-03-03
  • MongoDB優(yōu)化心得分享

    MongoDB優(yōu)化心得分享

    本文給大家分享的是一些使用mongoDB優(yōu)化方面的心得,有需要的小伙伴可以參考下
    2017-12-12
  • Mongodb3.0.5 副本集搭建及spring和java連接副本集配置詳細(xì)介紹

    Mongodb3.0.5 副本集搭建及spring和java連接副本集配置詳細(xì)介紹

    這篇文章主要介紹了Mongodb3.0.5 副本集搭建及spring和java連接副本集配置詳細(xì)介紹的相關(guān)資料,這里對安裝步驟進(jìn)行了詳解,需要的朋友可以參考下
    2016-12-12
  • MongoDB分片詳解

    MongoDB分片詳解

    本文分享了MongoDB分片詳細(xì)介紹,分片是MongoDB的擴(kuò)展方式,通過分片能夠增加更多的機(jī)器來用對不斷增加的負(fù)載和數(shù)據(jù),還不影響應(yīng)用,
    2018-03-03
  • MongoDB卸載安裝的詳細(xì)安裝教程

    MongoDB卸載安裝的詳細(xì)安裝教程

    MongoDB是一個是一個基于分布式文件存儲的數(shù)據(jù)庫,下面這篇文章主要給大家介紹了關(guān)于MongoDB卸載安裝的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-04-04
  • centos7安裝mongo數(shù)據(jù)庫的方法(mongo4.2.8)

    centos7安裝mongo數(shù)據(jù)庫的方法(mongo4.2.8)

    這篇文章給大家介紹了centos7安裝mongo4.2.8數(shù)據(jù)庫的詳細(xì)過程,包括mongo數(shù)據(jù)庫安裝和啟動方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2022-01-01

最新評論

鄯善县| 冷水江市| 武平县| 景洪市| 天峻县| 蓝田县| 满洲里市| 定西市| 定边县| 淄博市| 正定县| 兖州市| 汤阴县| 衡南县| 宜城市| 青州市| 巴东县| 岗巴县| 兰州市| 迁西县| 富川| 阳曲县| 礼泉县| 蕲春县| 东乡| 九龙坡区| 安仁县| 三江| 敦煌市| 会同县| 尚义县| 岳阳市| 八宿县| 阿尔山市| 固始县| 海原县| 衡东县| 陇川县| 安多县| 台南市| 淮南市|