首页 技术 正文
技术 2022年11月21日
0 收藏 920 点赞 4,633 浏览 1072 个字

.Net MongoDB LBS地理位置定位 开发过程,实现商家按距离排序

前言:

在使用美团点外卖,看电影,找好吃的时候,经常会注意到软件有一个按距离排序,找离我最近的商家,心中有一些疑问,.Net+Sql Server是如何做到这一需求的?发现使用关系型数据库Sql Server实现这一需求是有些问题的,需要一系列经纬度数学公式的计算,效率就不高了。近期了解学习了下非关系型数据库MongoDB,发现MongoDB的地理位置索引,可以完美的解决这个问题  

1. 本机部署安装MongoDB环境

首先去官网下载Windows安装包:https://www.mongodb.org/downloads一般情况下选择默认的64位即可(除非你的主机是32位),下载后,安装到C盘根目录 C:\MongoDB\,完成后,进入该目录,新建data和logs两个文件夹,并在logs目录下再新建个mongodb.log。此时的目录结构为:然后打开命令提示符(CMD),Windows8.1的用户需要用管理员身份打开。执行以下命令:mongod.exe –dbpath C:\MongoDB\Data –logpath=C:\MongoDB\Logs\mongodb.log –logappend 

2. 启动MongoDB

新开一个CMD,输入 cd C:\MongoDB\Server\3.4\bin 回车,打开MongoDB目录输入 mongo 回车,启动MongoDB此时打开浏览器,输入 http://127.0.0.1:27017/ ,浏览器如果出现:It looks like you are trying to access MongoDB over HTTP on the native driver port.证明MongoDB启动成功 

3. 打开VS,使用.Net链接操作MongoDB

① 新建项目,引用2个需要的dll② 准备各种配置,毫无疑问就是敲代码③ 新建一个商户实体类④ 编写插入代码,先插入100条测试数据随机插入100条商户数据供测试使用然后,cmd查询下mongodb,是不是100条数据已经插入完毕?⑤建立MongoDB地理位置索引 查看地理位置是否创建完毕 ⑥ 先用MongoDB的查询语句,查询下是否可以成功得到数据正常返回,下边使用C#啦⑤ 测试数据插入完毕,接下来就是实现功能,按距离排序读取最近10个商家F5走一个程序,看看效果~OK,得到数据,且这些是按距离[40,40],按从近到远的顺序,得到的10条商家数据,json都有了,你在C#还是在前端解析,都是无压力了!~~~到此圆满结束!

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,491
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,907
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,740
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,493
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,132
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,294