OPTIONS:
-s Set the SRID field. Defaults to -1.
(-d|a|c|p) These are mutually exclusiveoptions:
-d Drops the table, then recreates it and populates
it with current shape file data.
-a Appends shape file into current table, must be
exactly the same table schema.
-c Creates a new table and populates it, this is the
default if you do not specify anyoptions.
-p Prepare mode, only creates the table.
-g Specify the name of thegeometry/geography column.
(mostly useful in append mode).
-D Usepostgresql dump format (defaults to SQL insert statments).
-G Usegeography type (requires lon/lat data).
-k Keep postgresql identifiers case.
-i Useint4 type for all integer dbf fields.
-I Create a spatial index on the geocolumn.
-S Generate simple geometries instead of MULTI geometries.
-w Output WKT format (drops M and introduces coordinate drifts).
-W Specify the characterencoding of Shape's
attribute column. (default :"WINDOWS-1252").
-N NULL geometries handlingpolicy (insert*,skip,abort).
-n Only import DBF file.
-? Display this help screen.
3.1.2 生成导入sql语句
3.1.3 执行SQL语句
执行生成的sql语句,完成数据导入;
这里的空间数据被以字符串的形式存储;将这生成的sql语句以\i或者gui执行,就会生成数据表;
3.2 方法:在postgresql的pgAdmin中使用插件shp2pgsql导入
安装完成postgis后,会在pgAdminIII的插件中出现PostGIS Shapefile and DBF loader插件;点击数据库中架构,可以激活该插件。
3.2.1 连接数据库
点击出现导入对话框;在其中输入postgis数据库的连接参数;然后点击Test connection,测试连接;最下方的Import Log出现提示:
Connecting: host=localhost port=5432 user=postgresdbname=hainan password='***'
Connection succeeded.
说明连接成功;否则根据提示重新配置;
3.2.2 选择shape文件
连接成功后,点击最上方的shapefile文件选择,出现shapefile文件选择对话框,然后找到需要的shape文件,点击Open就可以加载地图;如果要加载同一目录的多个shapefile文件,可以使用左侧的add按钮,将目录加入左侧的快捷目录中,但是每次只能加载一个文件;
3.2.3 配置地图属性
导入之前,在options按钮打开的选项对话框中,选择要使用的编码;因为这里的文件中要使用中文属性,所以要使用gb2312;配置SRID为地图的投影EPSG编号;
3.2.4 导入地图
点击Import导入地图,成功后出现提示:
…
shapefile import completed.
否则根据提示重新设置;
3.3 方法:在qgis中使用spit导入
使用database->split->import shapefile topostgresql,建立连接,添加shp,确定后就可以在postgresql中看到增加的shp表。
4 方法: postgis数据组织
目标:在数据表中组织矢量元素的属性和几何。
方法:postgis使用一组postgres函数来处理数据。对空间数据的操作一般用ST_前缀。
参考:Postgis help chaper4-DataManagement。
http://blog.csdn.net/warrenwyf/article/category/705099
4.1 数据组织:属性数据和几何数据统一存储(与SQL92的分离存储不同???)。
数据类型为geometry,存储格式为WKB,元数据可由geometry_columns视图查看。
坐标系统由spatial_ref_sys表维护。
注意:geometry默认为平面坐标,如果设置为球面坐标系统将自动转换为geography类型。
参考:http://www.cnblogs.com/fre2technic/archive/2011/05/09/2041500.html
http://123.125.114.20/view/e52cdcd428ea81c758f578ac.html?re=view
http://wenku.baidu.com/view/5d29b55f312b3169a551a405.html
4.2 几何数据类型:支持WKT,WKB,KML,GML,geohash,geojson等。
以WKT为例,其它方式与此相似。
将postgis数据转换为WKT,WKB:ST_asText(the_geom),ST_asBinary。
示例:将数据转换为WKT,WKB
select st_asewkt(the_geom),
st_asText(the_geom),
st_asBinary(the_geom),
the_geom as"Origin"
from "Noded" wheregid=2;
将WKT转换为geom。
selectst_asText(st_geomfromtext('POINT(114 40)',4326));
4.2.1 EWKT:WKT扩展SRID。
如:SRID=4326;POINTM(114,40,0.02)
5 方法:操作几何数据
目标:通过sql能够进行空间数据操作。
方法:postgis扩展函数。
参考:http://blog.csdn.net/warrenwyf/article/details/5703349
5.1 几何字段操作:addgeometry,dropgeometry。
5.2 坐标系统操作:st_srid(),st_setsrid()。
查看坐标系统
selectst_asewkt(st_setsrid(ST_POINT(114,40),4326))
select st_srid(the_geom) fromroad_noded;
更改坐标系统:
update road_noded set the_geom= st_geomfromtext(ST_AsText(the_geom),4326)
参考:http://blog.csdn.net/cnhome/article/details/6990060
5.3 几何关系:st_intersects等。
5.4 测量:st_distance,st_length,st_area等。
5.5 几何操作:st_x,st_y,st_startpoint,st_endpoint等。
5.6 运行算:<->,&&,&&&
参考:帮助文档。
http://www.cnblogs.com/LCGIS/archive/2013/03/12/2954898.html
5.6.1 距离
5.6.1.1 几何体距离:<->。
selectst_point(-2,1)<->st_point(-3,2);
5.6.1.2 边框距离:<#>。
5.6.2 相交与方位:边框的关系
参考:http://www.cnblogs.com/LCGIS/archive/2013/03/12/2954898.html
5.6.2.1 相交:&&,&&&(3D)
5.6.2.2 左侧不相交:<<
5.6.2.3 右侧不相交:>>
5.6.2.4 下方不相交:<<|
5.6.2.5 上方不相交:>>|
5.6.2.6 相交或左侧:&<
5.6.2.7 相交或右侧:&>
5.6.2.8 相交或下方:&<|
5.6.2.9 相交或上方:|&>
5.6.3 相同性:边框关系
5.6.3.1 相同:=
5.6.3.2 边框相同:~=
5.6.4 包含关系:边框关系
5.6.4.1 包含于:@
5.6.4.2 包含:~
5.7 应用
5.7.1 根据坐标查询节点:使用-进行距离测算,取最近距离的点。
SELECT id::integer FROMroad_noded_vertices_pgr
ORDER BY the_geom <->ST_GeometryFromText('POINT(-3 1.6)',4326) LIMIT 1;
6 方法:查看postgis数据
6.1 从pg中查看
6.1.1 查看属性数据
可以直接查看属性表;
6.1.2 查看空间数据
可以使用postgis中内置的函数查看空间数据,如asewkt(geom);
注意:表名必须使用双引号引起来;
6.2 从qgis中可以查看包括地图数据和属性数据的导入的所有内容;
可以通过AddPostgis Layer或者Add vectorlayer两种方式查看postgis的数据,推荐使用addpostlayer,这种方式不用进行编码等的选项选择,可以直接读取源数据库的内容,更加容易操作;
6.2.1 Add Postgis Layer
点击add postgislayer 打开添加数据对话框
6.2.1.1 连接数据库
首先配置postgis数据库参数,配置完成后,点击test connect出现connection to db was successful提示,表明连接成功.
6.2.1.2 点击connect,出现所有的数据表,选择需要加载的数据表,点击add,就会显示在qgis中;
6.2.2 Add Vector Layer
点击add postgislayer 打开添加数据对话框
6.2.2.1 配置数据来源
选择数据源类型为数据库,编码为gb2312,数据库类型为postgresql;
6.2.2.2 连接数据库
首先配置postgis数据库参数,配置完成后,点击test connect出现连接成功的提示,表明连接成功.
6.2.2.3 选择数据
点击Open会出现所有的图层,选择需要的图层,点击OK就会加载到qgis中;
7 方法:索引postgis数据
7.1 索引类型
postgresql中存在三种形式的索引,BTrees,RTrees,GiST;
7.1.1 BTrees:适合于连续的数据,如时间,数字和字符;
7.1.2 RTrees:将数据分块存储,有些gis以此种方式索引数据,不过postgresql数据库的rtrees方法没有gist方法优秀;
7.1.3 GiST:Generalized Search Tree,适用范围广,并且postgis将RTrees建立在GiST之上,适合于建立gis索引;
7.1.4 注意
7.1.4.1 RTrees不允许使用NULL,也不允许超过8K的对象;而GiST不受限制.
7.1.4.2 使用索引时应注意经常进行Vacuum Analysis进行数据统计与整理,可以删除系统中无效的统计与索引文件,加快查询速度;
7.2 创建索引
7.2.1 语法
create index indexName on tabname using indextype(indexColumn);
7.2.2 方法
选择要创建索引的表,选择索引类型(这里应使用gist),索引字段(空间字段),就可以创建索引了;
也可以直接使用sql语句创建
CREATE INDEX geom_gist
ONpoint_airdrome_fly USING gist (the_geom);
7.3 注意:默认已经建立Gist索引
系统在加载时,默认为每个图层的空间数据都建立了gist索引,所以一般情况不需要特别再创建索引;
8 方法:部署pg数据库
在没有postgresql数据库的机器部署程序时,如果无法正确连接到所需的数据库,会造成程序假死;这时应对数据库进行配置,以防止无法连接数据库而造成问题;
在postgresql数据中,有三个配置文件,其中pg_hba.conf文件是用于客户端连接权限设定的.如果文件中不包含对客户端的设置,则无法连接;
8.1 配置pg_hba.conf文件:
在安装目录->data目录下,可以找到pg_hba.conf文件;
用记事本打开,并添加客户端地址及设置;
保存后,用配置编辑器打开;
显示添加内容正确表明设置成功;
9 方法:将分析数据保存为新表
目标:将postgis的分析数据保存为新表,并提取出结果数据为不同的几何类型。
方法:
查询保存为新表参见:..\postgresql\postgresql.docx中相关章节。
提取分析结果使用,st_CollectionExtract(collection,type),分析结果如果为collecion类型,可以将其抽取不指定的类,1=point,2=linestring,3=polygon。
参考:http://postgis.net/docs/ST_CollectionExtract.html
示例:
SELECT
st_astext(ST_CollectionExtract(st_split(r.geom,s.the_geom),2)),ST_CollectionExtract(st_split(r.geom,s.the_geom),2)
into stops3
FROM
public.road r,
public.roadwithstop2 s ;
你可能感兴趣的:(postgresql,数据库,gis,postgis,开发)
腾讯云放大招:3 行代码让 DeepSeek “入住” 微信小程序
BuluAI
腾讯云 微信小程序 云计算
小程序开发的革命性突破近日,技术圈迎来一则重磅消息——腾讯云推出全新功能,仅需3行代码,就能让DeepSeek大模型“入住”微信小程序,这无疑为开发者们带来了一场革命性的变革。在过去,将大模型能力集成到微信小程序中,过程复杂繁琐,代码量庞大,高门槛让众多开发者望而却步。但如今,腾讯云的这一创新举措,直接将难题“秒解”。开发者们只需轻松敲下3行代码,即可实现DeepSeek大模型在微信小程序中的接入
【Unity 监狱内部环境资产包】Jails Interior 提供了完整的监狱内部结构,包括牢房、走廊、审讯室、看守室等,并配备了大量高质量的家具、铁栏、门窗和其他装饰,快速搭建沉浸式的监狱场景
Unity游戏资源学习屋
Unity插件
JailsInterior是一款专为Unity设计的监狱内部环境资产包,适用于犯罪题材、恐怖游戏、警察模拟、逃脱解谜等类型的游戏。该插件提供了完整的监狱内部结构,包括牢房、走廊、审讯室、看守室等,并配备了大量高质量的家具、铁栏、门窗和其他装饰,帮助开发者快速搭建沉浸式的监狱场景。详细介绍1.逼真的监狱内部环境提供完整的监狱场景,包括牢房、走廊、审讯室、警卫室等,能够用于各类犯罪、逃脱、警察题材的游
MySQL 查询缓存技术深度解析
Minxinbb
数据库 mysql 数据库 dba
在现代数据库管理系统中,查询性能优化是提升应用响应速度和用户体验的关键环节。MySQL作为一款广泛使用的开源关系型数据库,提供了查询缓存功能,用于缓存查询结果,从而在后续相同的查询请求时能够快速返回结果,减少数据库的负载和查询时间。本文将深入探讨MySQL查询缓存技术的原理、配置、使用方法以及优化策略。一、查询缓存的基本原理(一)缓存机制概述MySQL查询缓存的核心思想是将查询语句和其对应的查询结
Python从0到100(三十九):数据提取之正则(文末免费送书)
是Dream呀
python mysql 开发语言
前言:零基础学Python:Python从0到100最新最全教程。想做这件事情很久了,这次我更新了自己所写过的所有博客,汇集成了Python从0到100,共一百节课,帮助大家一个月时间里从零基础到学习Python基础语法、Python爬虫、Web开发、计算机视觉、机器学习、神经网络以及人工智能相关知识,成为学习学习和学业的先行者!欢迎大家订阅专栏:零基础学Python:Python从0到100最新
【OpenTiny调研征集】共创技术未来,分享您的声音!
前端vue.js开源
欢迎参与2025年OpenTiny开源社区用户调研征集调研背景随着OpenTiny开源项目的不断发展,我们一直致力于为开发者提供高质量的Web前端开发解决方案。为了更好地满足用户需求,提升项目的实用性和易用性,我们决定发起一项用户调研活动,诚挚邀请您参与。调研目的了解用户需求:收集您在使用OpenTiny开源项目过程中的需求、问题和建议,以便我们更好地改进和优化。提升用户体验:通过您的反馈,我们将
基于微信小程序的宠物寄养平台的设计与实现
图灵软件设计
JAVA SSM 小程序 微信小程序 小程序 spring boot maven 后端 java mybatis
现在宠物寄养管理中已有一些商家使用了基本的管理软件,这些软件都是依靠客户端,只可以特定人员使用,不能实现信息的共享。虽然可以帮助工作人员减少工作量,但从根本上还是无法满足用户的需求。这些软件都还是基于网络发展之初的要求,没有利用现代网络的技术,体现不了更为实用的功能。依靠客户端的系统开发时没有考虑园际化的问题,所以也满足不了国际化的要求。最近几年来,我国网络快速发展,传统的管理方式也越来越适应不了
HarmonyOS Next智能家居控制系统的模型转换与数据处理实战
harmonyos
本文旨在深入探讨基于华为鸿蒙HarmonyOSNext系统(截止目前API12)构建智能家居控制系统中模型转换与数据处理技术的实战应用,基于实际开发经验进行总结。主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。本文为原创内容,任何形式的转载必须注明出处及原作者。一、智能家居系统需求与技术选型(一)功能需求分析设备状态监测需求智能家居控制系统需要实时监测各种智能设
HarmonyOS Next数据处理与模型训练优化
harmonyos
本文旨在深入探讨华为鸿蒙HarmonyOSNext系统(截止目前API12)中数据处理与模型训练优化相关技术细节,基于实际开发实践进行总结。主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。本文为原创内容,任何形式的转载必须注明出处及原作者。一、数据处理对模型训练的重要性(一)关键作用强调在HarmonyOSNext的模型训练世界里,数据就如同建筑的基石,而数据处
「2024 年度技术精华盘点」IvorySQL & PostgreSQL 技术干货全解析!
数据库
2024年,IvorySQL公众号持续输出高质量技术内容,涵盖PostgreSQL核心技术解析和IvorySQL创新实践两大方向。无论您是数据库领域的初学者,还是经验丰富的开发者,这些干货文章都能为您带来新的启发与实用价值。现在,让我们一起回顾这些精彩内容,探索数据库技术的无限可能!PostgreSQL技术干货PostgreSQL16中的新增功能:双向逻辑复制想要在多主数据库间实现无缝同步?Pos
cocos creator从零开发简单框架(12)-代码生成单色Sprite
cocos
在写Panel前,先写个方法生成单色Sprite,这样当碰到需要单色Sprite的时候不需要在编辑器拖拽和代码动态加载资源。编辑framework/scripts/AppUtil.ts,添加newSpriteNode方法。//生成默认白色100x100大小Sprite(单色)节点publicstaticnewSpriteNode(name:string='newSpriteNode'):cc.No
cocos creator从零开发简单框架(14)-Panel遮罩
cocos
遮罩相关属性编辑framework/scripts/view/PanelMgr.ts,增加遮罩相关成员变量及初始化方法。//所有面板privatestatic_panels:Map=newMap()privatestatic_maskName='_mask'privatestatic_maskPrefab:cc.Nodepublicstaticinit(){this._panels.clear()
cocos creator从零开发2048(06)-格子移动逻辑和键盘控制移动
cocos
编辑scripts/Game.ts,添加_moving属性标识当前是否移动中。privategridsReversed:Grid[][]=[]private_moving=false添加move方法移动格子。privatemove(grids:Grid[]){letlastIdx=grids.length-1letlastNum=grids[lastIdx].numfor(leti=grids.l
Android arcgis加载在线底图
Angie洛林
android arcgis
我整理的一些关于【信息系统】的项目学习资料(附讲解~~)和大家一起分享、学习一下:https://edu.51cto.com/mic-position/757.html在Android中使用ArcGIS加载在线底图ArcGIS是Esri提供的一套强大的地理信息系统(GIS)解决方案,支持多种平台,包括Android。本文将介绍如何在Android应用中使用ArcGIS加载在线底图,并配有相关代码示
使用Arcgis API for android加载OpenStreetMap底图并完成定位
续汉冕
移动开发 android android studio arcgis api
为了完成这个应用功能花了三天,代码倒不多就是比较坑!环境:AndroidSDKAPI22,AndroidStudio1.2.2,arcgisandroidSDK10.2.7如何基于ArcgisAPIforandroid在AndroidStudio新建一个项目就不再赘述了,大家可以参考以下网址:使用AndroidStudio与ArcgisandroidSDK的开发环境部署和HelloWorld:ht
vue3的Element plus (一)
GIS瞧葩菜
Element plus vue elementui Element plus vue3
介绍ElementPlus是一个基于Vue3的UI组件库,它是对ElementUI组件库的升级和扩展。ElementPlus提供了一套美观、易用且高效的组件,可以用于构建现代化的Web应用程序。ElementPlus的主要特点包括:支持Vue3:ElementPlus是专为Vue3开发的,充分利用Vue3的新特性和优势。TypeScript支持:ElementPlus提供了完整的TypeScrip
ArcGIS二次开发之WPF中控件的使用
ShirmyMao
ArcGIS二次开发 wpf c# arcgis
WPF中ArcGIS控件的使用WPF中插入ArcGIS控件Winform控件上嵌套使用WPF控件WPF中插入ArcGIS控件在WPF中引用ArcGIS的控件需要使用WindowsFromsHost,具体用法如下:添加引用:WindowsFormsIntegration和system.windows.formWpf.xaml中后台代码中:publicAxMapControlMapControl=ne
PHP搜索引擎WindSearch,新增Faker伪数据生成功能
WindSearch是一个基于中文分词,由纯PHP开发全文检索引擎,可快速搭建PHP站点的站内搜索,他没有任何繁琐的安装配置、不需要维护调优、不占用服务器内存、可与PHP项目完美融合在一起。Faker数据生成安装导入//将WindSearch代码下载到本地,再像下面这样引入require_once'yourdirname/windsearch/vendor/autoload.php';开始生成//
AI 如何接口调试?可以展示推理过程
人工智能深度学习机器学习
如何在开发AI接口的同时,能看到实时的AI回复,避免传统的轮询方式,而无需长时间等待。常用的AI模型(比如Deepseek、Gemini)都是支持流式输出,那有没有一款API接口软件可以实现这功能?近期Apifox增强了调试SSE接口功能,实现了发起HTTP请求流式响应就会自动合并为可读文本,实时以自然语言呈现响应。而且针对Deepseek还能展示思考推理过程!这大大降低AI应用开发难度,有图为证
ArcGIS Runtime SDK for iOS 开发之地图范围(map extent)
hlj184
ArcGIS for IOS arcgis ios开发 map extent
注:本篇文章翻译自:https://developers.arcgis.com/ios/objective-c/guide/iphonesdk-mapnavigation.htm;地图视图包含了地图范围被定义和改变的选项。值得注意的是,底图(加载到地图中的第一层图层)定义了下列地图属性:初始化范围全部范围空间参考系其中,初始范围可以被改变,而空间参考不可以改变。本篇文章主要讨论针对开发者和最终用户
探索单片机世界的音乐之旅 —— 51单片机简易电子琴项目解析
蔡松宽
探索单片机世界的音乐之旅——51单片机简易电子琴项目解析电子琴.rar项目地址:https://gitcode.com/open-source-toolkit/67c65项目概况:旋律与科技的融合在浩瀚的电子海洋里,51单片机始终是那座引领初学者进入嵌入式开发殿堂的桥梁。51单片机实战之简易电子琴项目,正是专为此而生的一盏明灯。它不仅是技术实践的绝佳示例,更是每一位电子爱好者发掘硬件音乐潜能的钥匙
车载音频开发(三):对wav音频做定浮点转换(采样深度转换)
Mr Chris_LI
wav音频开发心得 音视频
对于wav的采样格式讨论较多的是定浮点采样基于上一节我们对采样点的理解车载音频开发(二):对音频数据作音量调节_音频数据的音量控制代码-CSDN博客定点常见的有16bit,24bit,和32bit浮点一般用float(32bit)IEEE754浮点数不同位深度的取值范围:16bit定点数:-32,768~32,76724bit定点数:-8,388,608~8,388,60732bit定点数:-2,
UDP通信开发
Charary
udp 网络
开发流程:UDP本身不考虑链接,不存在客户和服务器的概念,UDP开发只有三步:创建UDP的套接字socket(AF_INET,SOCK_DGRAM,0)绑定自己的属性bindUDP随意的发送和接收数据sendto/recvfromUDP接口函数:sendto()函数功能:UDP专用的发送函数函数原型:ssize_tsendto(intsockfd,//套接字constvoid*buf,//待发送的
【计算机毕设任务书】基于微信小程序的宠物寄养平台的设计与实现
Eastonzhang888
计算机毕设任务书参考案例 课程设计 微信小程序 宠物 数据库 intellij-idea 计算机毕业设计 小程序
一、设计的主要内容、技术参数及工作要求研究目的现在宠物寄养管理中已有一些商家使用了基本的管理软件,这些软件都是依靠客户端,只可以特定人员使用,不能实现信息的共享。虽然可以帮助工作人员减少工作量,但从根本上还是无法满足用户的需求。这些软件都还是基于网络发展之初的要求,没有利用现代网络的技术,体现不了更为实用的功能。依靠客户端的系统开发时没有考虑园际化的问题,所以也满足不了国际化的要求。最近几年来,我
嵌入式音视频开发(二)ffmpeg音视频同步
云雨歇
音视频 ffmpeg
系列文章目录嵌入式音视频开发(零)移植ffmpeg及推流测试嵌入式音视频开发(一)ffmpeg框架及内核解析嵌入式音视频开发(二)ffmpeg音视频同步嵌入式音视频开发(三)直播协议及编码器文章目录系列文章目录前言一、音视频同步1.1基础概念1.2三种同步方法二、音视频同步的实现2.1时间基的转换问题2.2音频为基准2.2.1实现思路2.2.2代码大纲2.3外部时钟同步2.3.1实现思路2.3.2
【人工智能时代】- AI 聚合平台
xiaoli8748_软件开发
人工智能时代 人工智能
最近听朋友介绍,国内有个团队开发了一个全功能的AI聚合平台,包含主流的GPT和绘画功能,以及一些其他的衍生功能,几乎应有尽有。于是,对AI很感兴趣的我,便也来瞧瞧这是个什么样的存在,以下便是我的真实使用感受。除此以外,作为一个程序员,我还使用了该平台提供的API接口,开发了一个简单的小程序。文章的末尾,我将提供免费的AI机器人,以及小程序体验地址,记得查收哦~官方网站:https://302.ai
heidisql连接远程数据库_【已解决】HeidiSQL连接(登录)MySQL数据库报错10061问题...
weixin_39589511
heidisql连接远程数据库
windows核心编程---第六章线程的调度每个线程都有一个CONTEXT结构,保存在线程内核对象中.大约每隔20mswindows就会查看所有当前存在的线程内核对象.并在可调度的线程内核对象中选择一个,将其保存在CONTEXT结构的值载入c...【转】SQLite提示databasediskimageismalformed的解决方法SQLite有一个很严重的缺点就是不提供Repair命令.导致死
Python 舆论风向分析爬虫:全流程数据获取、清洗与情感剖析
西攻城狮北
python 爬虫 开发语言 实战案例
引言在当今信息爆炸的时代,互联网上充斥着海量的用户言论和观点。了解舆论风向对于企业、政府机构以及研究者等具有重要的意义,可以帮助他们及时把握公众情绪、调整策略与决策。Python作为一种强大的编程语言,在数据爬取与分析方面具有得天独厚的优势,能够助力我们高效地实现舆情监测与深入剖析。一、环境搭建与目标确定1.环境搭建为了顺利完成爬虫与数据分析任务,首先需要确保你的开发环境已经安装了以下Python
【HarmonyOS Next】鸿蒙监听手机按键
GeorgeGcs
HarmonyOS 解决方案 OpenHarmony知识体系 harmonyos 华为 onKeyEvent 按键 监听事件 按下 鸿蒙
【HarmonyOSNext】鸿蒙监听手机按键一、前言应用开发中我们会遇到监听用户实体按键,或者扩展按键的需求。亦或者是在某些场景下,禁止用户按下某些按键的业务需求。这两种需求,鸿蒙都提供了对应的监听事件进行处理。onKeyEvent默认的按钮监听事件onKeyPreIme这是优先级最高的监听回调,别上面多了一个return开关,用于告诉系统监听事件是否再向下传递。窗口是第一级接收按钮事件的实体。
分布式数据库解析
qcidyu
文章归档 数据分片 高可用架构 云数据库 共识算法 全球一致性 分布式事务 CAP定理
title:分布式数据库解析date:2025/2/20updated:2025/2/20author:cmdragonexcerpt:通过金融交易、社交平台、物联网等9大真实场景,结合GoogleSpanner跨洲事务、DynamoDB毫秒级扩展等38个生产级案例,揭示分布式数据库的核心原理与工程实践。内容涵盖CAP定理的动态权衡策略、Paxos/Raft协议的工程实现差异、TrueTime时钟
PyCharm 集成 DeepSeek:本地运行 or API 直连?打造你的 AI 编程神器!
AI云极
【AI智能系列】 pycharm 人工智能 ide deepseek
在AI赋能编程的时代,如何让AI辅助写代码,提升开发效率?DeepSeek作为一款开源、强大、免费的AI编程助手,结合PyCharm,能够大幅提升Python编程体验。今天,我们就来详细讲解如何在PyCharm中接入DeepSeek,无论你想使用本地部署的DeepSeek,还是官方API版本,都能轻松实现!为什么选择DeepSeek+PyCharm?DeepSeekR1采用6710亿参数的MoE(
Java 并发包之线程池和原子计数
lijingyao8206
Java计数 ThreadPool 并发包 java线程池
对于大数据量关联的业务处理逻辑,比较直接的想法就是用JDK提供的并发包去解决多线程情况下的业务数据处理。线程池可以提供很好的管理线程的方式,并且可以提高线程利用率,并发包中的原子计数在多线程的情况下可以让我们避免去写一些同步代码。
这里就先把jdk并发包中的线程池处理器ThreadPoolExecutor 以原子计数类AomicInteger 和倒数计时锁C
java编程思想 抽象类和接口
百合不是茶
java 抽象类 接口
接口c++对接口和内部类只有简介的支持,但在java中有队这些类的直接支持
1 ,抽象类 : 如果一个类包含一个或多个抽象方法,该类必须限定为抽象类(否者编译器报错)
抽象方法 : 在方法中仅有声明而没有方法体
package com.wj.Interface;
[房地产与大数据]房地产数据挖掘系统
comsci
数据挖掘
随着一个关键核心技术的突破,我们已经是独立自主的开发某些先进模块,但是要完全实现,还需要一定的时间...
所以,除了代码工作以外,我们还需要关心一下非技术领域的事件..比如说房地产
&nb
数组队列总结
沐刃青蛟
数组队列
数组队列是一种大小可以改变,类型没有定死的类似数组的工具。不过与数组相比,它更具有灵活性。因为它不但不用担心越界问题,而且因为泛型(类似c++中模板的东西)的存在而支持各种类型。
以下是数组队列的功能实现代码:
import List.Student;
public class
Oracle存储过程无法编译的解决方法
IT独行者
oracle 存储过程
今天同事修改Oracle存储过程又导致2个过程无法被编译,流程规范上的东西,Dave 这里不多说,看看怎么解决问题。
1. 查看无效对象
XEZF@xezf(qs-xezf-db1)> select object_name,object_type,status from all_objects where status='IN
重装系统之后oracle恢复
文强chu
oracle
前几天正在使用电脑,没有暂停oracle的各种服务。
突然win8.1系统奔溃,无法修复,开机时系统 提示正在搜集错误信息,然后再开机,再提示的无限循环中。
无耐我拿出系统u盘 准备重装系统,没想到竟然无法从u盘引导成功。
晚上到外面早了一家修电脑店,让人家给装了个系统,并且那哥们在我没反应过来的时候,
直接把我的c盘给格式化了 并且清理了注册表,再装系统。
然后的结果就是我的oracl
python学习二( 一些基础语法)
小桔子
pthon 基础语法
紧接着把!昨天没看继续看django 官方教程,学了下python的基本语法 与c类语言还是有些小差别:
1.ptyhon的源文件以UTF-8编码格式
2.
/ 除 结果浮点型
// 除 结果整形
% 除 取余数
* 乘
** 乘方 eg 5**2 结果是5的2次方25
_&
svn 常用命令
aichenglong
SVN 版本回退
1 svn回退版本
1)在window中选择log,根据想要回退的内容,选择revert this version或revert chanages from this version
两者的区别:
revert this version:表示回退到当前版本(该版本后的版本全部作废)
revert chanages from this versio
某小公司面试归来
alafqq
面试
先填单子,还要写笔试题,我以时间为急,拒绝了它。。时间宝贵。
老拿这些对付毕业生的东东来吓唬我。。
面试官很刁难,问了几个问题,记录下;
1,包的范围。。。public,private,protect. --悲剧了
2,hashcode方法和equals方法的区别。谁覆盖谁.结果,他说我说反了。
3,最恶心的一道题,抽象类继承抽象类吗?(察,一般它都是被继承的啊)
4,stru
动态数组的存储速度比较 集合框架
百合不是茶
集合框架
集合框架:
自定义数据结构(增删改查等)
package 数组;
/**
* 创建动态数组
* @author 百合
*
*/
public class ArrayDemo{
//定义一个数组来存放数据
String[] src = new String[0];
/**
* 增加元素加入容器
* @param s要加入容器
用JS实现一个JS对象,对象里有两个属性一个方法
bijian1013
js对象
<html>
<head>
</head>
<body>
用js代码实现一个js对象,对象里有两个属性,一个方法
</body>
<script>
var obj={a:'1234567',b:'bbbbbbbbbb',c:function(x){
探索JUnit4扩展:使用Rule
bijian1013
java 单元测试 JUnit Rule
在上一篇文章中,讨论了使用Runner扩展JUnit4的方式,即直接修改Test Runner的实现(BlockJUnit4ClassRunner)。但这种方法显然不便于灵活地添加或删除扩展功能。下面将使用JUnit4.7才开始引入的扩展方式——Rule来实现相同的扩展功能。
1. Rule
&n
[Gson一]非泛型POJO对象的反序列化
bit1129
POJO
当要将JSON数据串反序列化自身为非泛型的POJO时,使用Gson.fromJson(String, Class)方法。自身为非泛型的POJO的包括两种:
1. POJO对象不包含任何泛型的字段
2. POJO对象包含泛型字段,例如泛型集合或者泛型类
Data类 a.不是泛型类, b.Data中的集合List和Map都是泛型的 c.Data中不包含其它的POJO
 
【Kakfa五】Kafka Producer和Consumer基本使用
bit1129
kafka
0.Kafka服务器的配置
一个Broker,
一个Topic
Topic中只有一个Partition() 1. Producer:
package kafka.examples.producers;
import kafka.producer.KeyedMessage;
import kafka.javaapi.producer.Producer;
impor
lsyncd实时同步搭建指南——取代rsync+inotify
ronin47
1. 几大实时同步工具比较 1.1 inotify + rsync
最近一直在寻求生产服务服务器上的同步替代方案,原先使用的是 inotify + rsync,但随着文件数量的增大到100W+,目录下的文件列表就达20M,在网络状况不佳或者限速的情况下,变更的文件可能10来个才几M,却因此要发送的文件列表就达20M,严重减低的带宽的使用效率以及同步效率;更为要紧的是,加入inotify
java-9. 判断整数序列是不是二元查找树的后序遍历结果
bylijinnan
java
public class IsBinTreePostTraverse{
static boolean isBSTPostOrder(int[] a){
if(a==null){
return false;
}
/*1.只有一个结点时,肯定是查找树
*2.只有两个结点时,肯定是查找树。例如{5,6}对应的BST是 6 {6,5}对应的BST是
MySQL的sum函数返回的类型
bylijinnan
java spring sql mysql jdbc
今天项目切换数据库时,出错
访问数据库的代码大概是这样:
String sql = "select sum(number) as sumNumberOfOneDay from tableName";
List<Map> rows = getJdbcTemplate().queryForList(sql);
for (Map row : rows
java设计模式之单例模式
chicony
java设计模式
在阎宏博士的《JAVA与模式》一书中开头是这样描述单例模式的:
作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。 单例模式的结构
单例模式的特点:
单例类只能有一个实例。
单例类必须自己创建自己的唯一实例。
单例类必须给所有其他对象提供这一实例。
饿汉式单例类
publ
javascript取当月最后一天
ctrain
JavaScript
<!--javascript取当月最后一天-->
<script language=javascript>
var current = new Date();
var year = current.getYear();
var month = current.getMonth();
showMonthLastDay(year, mont
linux tune2fs命令详解
daizj
linux tune2fs 查看系统文件块信息
一.简介:
tune2fs是调整和查看ext2/ext3文件系统的文件系统参数,Windows下面如果出现意外断电死机情况,下次开机一般都会出现系统自检。Linux系统下面也有文件系统自检,而且是可以通过tune2fs命令,自行定义自检周期及方式。
二.用法:
Usage: tune2fs [-c max_mounts_count] [-e errors_behavior] [-g grou
做有中国特色的程序员
dcj3sjt126com
程序员
从出版业说起 网络作品排到靠前的,都不会太难看,一般人不爱看某部作品也是因为不喜欢这个类型,而此人也不会全不喜欢这些网络作品。究其原因,是因为网络作品都是让人先白看的,看的好了才出了头。而纸质作品就不一定了,排行榜靠前的,有好作品,也有垃圾。 许多大牛都是写了博客,后来出了书。这些书也都不次,可能有人让为不好,是因为技术书不像小说,小说在读故事,技术书是在学知识或温习知识,有
Android:TextView属性大全
dcj3sjt126com
textview
android:autoLink 设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all) android:autoText 如果设置,将自动执行输入值的拼写纠正。此处无效果,在显示输入法并输
tomcat虚拟目录安装及其配置
eksliang
tomcat配置说明 tomca部署web应用 tomcat虚拟目录安装
转载请出自出处:http://eksliang.iteye.com/blog/2097184
1.-------------------------------------------tomcat 目录结构
config:存放tomcat的配置文件
temp :存放tomcat跑起来后存放临时文件用的
work : 当第一次访问应用中的jsp
浅谈:APP有哪些常被黑客利用的安全漏洞
gg163
APP
首先,说到APP的安全漏洞,身为程序猿的大家应该不陌生;如果抛开安卓自身开源的问题的话,其主要产生的原因就是开发过程中疏忽或者代码不严谨引起的。但这些责任也不能怪在程序猿头上,有时会因为BOSS时间催得紧等很多可观原因。由国内移动应用安全检测团队爱内测(ineice.com)的CTO给我们浅谈关于Android 系统的开源设计以及生态环境。
1. 应用反编译漏洞:APK 包非常容易被反编译成可读
C#根据网址生成静态页面
hvt
Web .net C# asp.net hovertree
HoverTree开源项目中HoverTreeWeb.HVTPanel的Index.aspx文件是后台管理的首页。包含生成留言板首页,以及显示用户名,退出等功能。根据网址生成页面的方法:
bool CreateHtmlFile(string url, string path)
{
//http://keleyi.com/a/bjae/3d10wfax.htm
stri
SVG 教程 (一)
天梯梦
svg
SVG 简介
SVG 是使用 XML 来描述二维图形和绘图程序的语言。 学习之前应具备的基础知识:
继续学习之前,你应该对以下内容有基本的了解:
HTML
XML 基础
如果希望首先学习这些内容,请在本站的首页选择相应的教程。 什么是SVG?
SVG 指可伸缩矢量图形 (Scalable Vector Graphics)
SVG 用来定义用于网络的基于矢量
一个简单的java栈
luyulong
java 数据结构 栈
public class MyStack {
private long[] arr;
private int top;
public MyStack() {
arr = new long[10];
top = -1;
}
public MyStack(int maxsize) {
arr = new long[maxsize];
top
基础数据结构和算法八:Binary search
sunwinner
Algorithm Binary search
Binary search needs an ordered array so that it can use array indexing to dramatically reduce the number of compares required for each search, using the classic and venerable binary search algori
12个C语言面试题,涉及指针、进程、运算、结构体、函数、内存,看看你能做出几个!
刘星宇
c 面试
12个C语言面试题,涉及指针、进程、运算、结构体、函数、内存,看看你能做出几个!
1.gets()函数
问:请找出下面代码里的问题:
#include<stdio.h>
int main(void)
{
char buff[10];
memset(buff,0,sizeof(buff));
ITeye 7月技术图书有奖试读获奖名单公布
ITeye管理员
活动 ITeye 试读
ITeye携手人民邮电出版社图灵教育共同举办的7月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
7月试读活动回顾:
http://webmaster.iteye.com/blog/2092746
本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《Java性能优化权威指南》