当前位置: 首页 > wzjs >正文

医院网站设计与实现网站建设中有关数据库问题

医院网站设计与实现,网站建设中有关数据库问题,网站升级中 html,免费建立网站的软件文章目录 MongoDB数据库引入pom依赖配置yaml配置文件参考POJOXLocationRepositoryservice服务方法 腾讯地图接口申请api key配置api key启动类配置RestTemplate控制层服务层 MongoDB数据库 MongoDB对应经纬度的查询具体很好的支持. 引入pom依赖 <dependency><group…

文章目录

  • MongoDB数据库
    • 引入pom依赖
    • 配置yaml配置文件
    • 参考POJO
    • XLocationRepository
    • service服务方法
  • 腾讯地图接口
    • 申请api key
    • 配置api key
    • 启动类配置RestTemplate
    • 控制层
    • 服务层

MongoDB数据库

  • MongoDB对应经纬度的查询具体很好的支持.

引入pom依赖

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

配置yaml配置文件

  • 填写mongodb的连接信息,注意数据库需要提前创建
spring:data:mongodb:host: ipport: 27017database: share #指定操作的数据库

参考POJO

@Data
@Schema(description = "x位置")
public class xLocation
{@Schema(description = "id")@Idprivate String id;@Schema(description = "id")private Long xId;@Schema(description = "经纬度")private GeoJsonPoint location;@Schema(description = "创建时间")private Date createTime;
}

XLocationRepository

@Repository
public interface XLocationRepository extends MongoRepository<XLocation, String> {XLocation getByXId(Long xId);
}

service服务方法

@Transactional(rollbackFor = Exception.class)
@Override
public boolean savex(X x) {//同步站点位置信息到MongoDBXLocation xLocation = new XLocation();xLocation.setStationId(x.getId());xLocation.setLocation(new GeoJsonPoint(x.getLongitude().doubleValue(), x.getLatitude().doubleValue()));xLocation.setCreateTime(new Date());xLocationRepository.save(xLocation);return True;
}@Transactional(rollbackFor = Exception.class)
@Override
public boolean updateStation(X x) {String provinceName = regionService.getNameByCode(x.getProvinceCode());String cityName = regionService.getNameByCode(x.getCityCode());String districtName = regionService.getNameByCode(x.getDistrictCode());station.setFullAddress(provinceName + cityName + districtName + station.getAddress());this.updateById(x);//同步站点位置信息到MongoDBStationLocation stationLocation = stationLocationRepository.getByStationId(x.getId());stationLocation.setLocation(new GeoJsonPoint(x.getLongitude().doubleValue(), x.getLatitude().doubleValue()));stationLocationRepository.save(xLocation);return true;
}

腾讯地图接口

申请api key

  • 腾讯位置服务端API文档
  1. 开通地图服务:开通地图服务,首先你要访问腾讯位置服务的官网,然后注册新用户并且登陆。
  2. 控制台 − > 应用管理 − > 我的应用 − > 创建应用 控制台->应用管理 ->我的应用 ->创建应用 控制台>应用管理>我的应用>创建应用
    在这里插入图片描述
  3. 配置应用:创建好应用之后,编辑应用,在弹窗中,把WebService设置成“域名白名单”,然后填写小程序APPID。
    在这里插入图片描述
  4. 账号额度:腾讯位置服务给开发者提供免费的调用额度,对于开发者来说是足够用。

在这里插入图片描述

配置api key

tencent:map:key: PYOBZ-Y6ZRZ-HMZXP-ZTMES-****-****

启动类配置RestTemplate

@Bean
public RestTemplate restTemplate() {return new RestTemplate();
}

控制层

@Tag(name = "地图接口管理")
@RestController
@RequestMapping("/map")
public class MapController extends BaseController
{@Autowiredprivate IMapService mapService;@Operation(summary = "根据经纬度计算详细地址")@GetMapping("/calculateLatLng/{keyword}")public AjaxResult calculateLatLng(@PathVariable String keyword){return success(mapService.calculateLatLng(keyword));}}

服务层

public interface IMapService {JSONObject calculateLatLng(String keyword);
}
@Slf4j
@Service
@SuppressWarnings({"unchecked", "rawtypes"})
public class MapServiceImpl implements IMapService {@Autowiredprivate RestTemplate restTemplate;@Value("${tencent.map.key}")private String key;@Overridepublic JSONObject calculateLatLng(String keyword) {String url = "https://apis.map.qq.com/ws/geocoder/v1/?address={address}&key={key}";Map<String, String> map = new HashMap<>();map.put("address", keyword);map.put("key", key);JSONObject response = restTemplate.getForObject(url, JSONObject.class, map);if (response.getIntValue("status") != 0) {throw new ServiceException("地图解析异常");}//返回第一条最佳线路JSONObject result = response.getJSONObject("result");System.out.println(result.toJSONString());return result.getJSONObject("location");}}
http://www.dtcms.com/wzjs/838833.html

相关文章:

  • 网站登录页面空白网站建设读后感
  • 建设网站公司电话销售话术免费手机网站建站
  • 动易网站设计方案网站伪静态如何配置文件
  • 网站开发的三个流程寻找网站建设员
  • 怎样说服企业做网站建设推广专业seo培训学校
  • 手机自适应网站cpu游戏优化加速软件
  • 企业网站管理系统如何使用说明企业网站内容运营
  • WordPress网站hym地图关于旅行的网站怎样做
  • 做平面计设和网站哪个好与建设部网站
  • 接口网站建设ptp网站开发
  • 网站seo 教程企业网站管理系统软件
  • 企业网站 html5山西网站建设电话
  • 网站建设相关优化清镇手机网站建设
  • 网站开发简历的项目经验小程序制作流程步骤
  • 城网站建设华为网站建设
  • 石家庄做手机网站建设网站开发与开发
  • 网站上线前需要做什么wordpress怎么更换域名
  • 网站全能空间做网站备案是什么意思
  • 暴雪战网官方网站入口top域名的网站打不开
  • 网站开发_运行及维护企业网站的首页
  • 北京如何做网站WordPress开源项目
  • 深圳网站建设费用大概多少免费销售网站模板下载
  • 实业公司网站建设合肥网站优化 新浪博客
  • 农家乐网站 建设电子计算机哪个专业最吃香
  • 无忧网站建设哪家好网站设计费用志
  • 南阳 网站建设南宁模板做网站
  • 杭州市建设工程招标网应聘网站优化的简历怎么做
  • 网站资料怎样做外部网站推广
  • 泗阳做网站的360免费做网站
  • 网站域名的密码seo是什么职业做什么的