cesuim加载geoserver+mysql发布的地图遇到的坑
最近在整cesium,碰到大量矢量数据加载,于是想用geoserver+mysql发布成图层服务。这里只是记录下遇到问题和解决方案
首先是mysql8.0数据库搭建。参考我的另一篇:https://www.cnblogs.com/smlPig/p/11026440.html
然后geoserver服务搭建,网上有教程,这里不赘述。对mysql支持需要下个jar包,网址:下载最新的就行,然后放到(你的geoserver安装路径)\GeoServer 2.15.1\webapps\geoserver\WEB-INF\lib路径下,打开geoserver出现
说明插件成功。向MySQL库里添加一个测试表geo_poi,添加测试数据。
insert into geo_poi(name,geo) VALUE('1',ST_GeomFromText('Point(116.52564653125002 39.99001174246744)',4326))
悲剧了,发现插不进去。一直报经度位置不在-90~90范围,后来查资料发现mysql8.0的空间录入时是纬经度,纬度在经度前。好吧,不要srid试下,哎~录进去了,很开心。于是开始向geoserver添加mysql的数据源,然后展示图层。额。。又杯具了
报geo.asWKB函数不存在,在mysql数据库里测试了一下。有哇。哎~~整不了(我怀疑是geoserver对8.0支持不太全,srid缺失导致的经纬度无法识别)。既然8.0不行就整个稳定的5.7呗。然后开始下mysql5.7,下完搭环境,发现net start mysql5.7无法启动,怀疑是之前的8.0的影响,于是先关掉之前的服务,还是不行。于是查资料,说要mysqld --initialize-insecure --user=mysql 说要这么一下。然后我就这么一下,结果报错了,说我的data文件不是空文件夹。然后我一看,我踏马连这个文件都没有,然后我就在bin的同目录下建了一个空文件夹,还是报这个错。一头迷雾,就搁置了下。、
后来觉得还是之前8.0影响的,删了吧,于是就删数据库,参考:https://lxzqz.iteye.com/blog/2432472。又是一顿操作(不过因为当时用的.zip文件夹安装的,所以注意的地方不是很多)。删完一运行,还是那个错。好吧,然后我就小崩溃。然后我就已经放弃治疗了,把8.0的安装包也删了,就好了!!!想想可能是由于之前的mysql服务有残余?data指向是8.0的data文件?
然后添加测试数据,在geoserver服务添加mysql数据源,发布服务通了。
最后是用cesium加载wms服务,在geoserver发布的服务右键,然后就能看见所需参数。
然后加载
let layers = viewer.imageryLayers; let layerPoi = new Cesium.WebMapServiceImageryProvider({ url: "http://localhost:8080/geoserver/lslSelf/wms?", layers: 'lslSelf:geo_poi2', parameters: { service : 'WMS', format: 'image/png', srs:'EPSG:4326', transparent: true//是否透明 } }); layers.addImageryProvider(layerPoi);
ok,成功展示
原文地址:https://www.cnblogs.com/smlPig/p/11045270.html
- MySQL 教程
- MySQL 安装
- MySQL 管理与配置
- MySQL PHP 语法
- MySQL 连接
- MySQL 创建数据库
- MySQL 删除数据库
- MySQL 选择数据库
- MySQL 数据类型
- MySQL 创建数据表
- MySQL 删除数据表
- MySQL 插入数据
- MySQL 查询数据
- MySQL where 子句
- MySQL UPDATE 查询
- MySQL DELETE 语句
- MySQL LIKE 子句
- mysql order by
- Mysql Join的使用
- MySQL NULL 值处理
- MySQL 正则表达式
- MySQL 事务
- MySQL ALTER命令
- MySQL 索引
- MySQL 临时表
- MySQL 复制表
- 查看MySQL 元数据
- MySQL 序列 AUTO_INCREMENT
- MySQL 处理重复数据
- MySQL 及 SQL 注入
- MySQL 导出数据
- MySQL 导入数据
- MYSQL 函数大全
- MySQL Group By 实例讲解
- MySQL Max()函数实例讲解
- mysql count函数实例
- MYSQL UNION和UNION ALL实例
- MySQL IN 用法
- MySQL between and 实例讲解
- 前端国际化辅助工具——自动替换中文并翻译
- Codeforces Round #613 (Div. 2)A. Mezo Playing Zoma
- PAT (Advanced Level) Practice 1096 Consecutive Factors (20 分)
- Codeforces Round #613 (Div. 2)B. Just Eat It!
- java线程池(六):ForkJoinPool源码分析之二(WorkQueue源码)
- Codeforces Round #605 (Div. 3) D. Remove One Element
- 用python爬虫,pyinstaller写一个属于自己的彩虹屁生成器!
- 2020牛客寒假算法基础集训营4 C 子段乘积
- Callable and Future in Java(java中的Callable和Future)
- Java类 初步学习
- Gephi可视化拓扑图简单实战
- python连接到SQList数据库以及简单操作
- 在markdown编辑器使用html绘制表格
- 循环不变式:算法中基础概念的明晰
- Codeforces Round #615 (Div. 3)B. Collecting Packages