自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

左直拳的马桶_日用桶

我可以把手按在马桶盖上发誓:所有的文章都是我自己屙的

原创 java读取shapefile且用arcgis for js展示

如题,java读取shapefile文件内容,输出到前端,用arcgis for js进行展示。循例一言不合就发图,来个感性认识。 shapefile是一种空间数据文件。它是美国esri公司制定的一种文件格式。事实上,shapefile通常不会是一个文件,而是一堆名字相同,只是后缀名不同的文件,...

2020-05-30 12:19:28 6 0

原创 arcgis for js 3.X利用symbol设置svgpath绘制符号

如题所示,arcgis for js利用symbol设置svgpath绘制符号。 先贴出绘制结果,有个感性认识: 图中三角形、箭头形,以及里面带圆形的,都是通过设置symbol.svgpath进行绘制的。摘要代码如下: var _cbg = new Color([255, 255, 255, 0...

2020-05-30 10:48:28 6 0

原创 地图切片

以下内容纯粹个人理解。 地图切片,就是地图服务器将地图预先绘制成图片,存起来,遇到请求,直接返回图片。 好处不言而喻,节省了绘制的时间,速度快了,也减轻了服务器的压力。 其实地图很多时候返回的都是图片。比如说,前端用加载动态图层(ArcGISDynamicMapServiceLayer)方式加载a...

2020-05-27 19:21:53 118 0

原创 spring boot + thymeleaf下的模块化编程

题目也不知道是否准确。 thymeleaf只是一种前端模板引擎。spring boot与之结合,可以部分实现前后端分离。为什么说部分实现呢,因为所谓模板也者,上面会放置一些服务器端的输出信息,还是要靠服务器解析,完了之后再输出到前端的浏览器。完全的前后端分离,据说是服务器信息都来自于ajax的请求...

2020-05-25 18:45:05 117 0

原创 oracle拆分分区表及重建索引

111

2020-05-23 12:05:02 69 0

原创 oracle 12c归档模式转非归档模式

开发服务器的硬盘空间不够用了。本来某个分区昨天才清出10G剩余空间,但今天早上oracle已经无法访问,上去看,硬盘空间为0。真很恐怖,啥东西在狂吃硬盘?后来发现是oracle自己。它的RDBMS(\product\12.1.0\dbhome_1\RDBMS)目录下,已经有文件485G之多!绝大部...

2020-05-23 11:05:53 34 0

原创 堡垒机和工单

看技术清单,发现有堡垒机和工单。啥东东? 不懂就问。 堡垒机,也叫做运维安全审计系统,它的核心功能是 4A: 身份验证 Authentication 账号管理 Account 授权控制 Authorization 安全审计 Audit 简单总结一句话:堡垒机是用来控制哪些人可以登录哪些资产(事...

2020-05-16 18:21:57 55 0

原创 动态加载js

某些场景下需要动态加载js脚本。示例如下 <!--/* 地图页面加载气泡相关js 之所以动态加载,是因为气泡相关js不是地图必须依赖,只跟具体业务有关 */--> <script th:inline="javascript"> v...

2020-05-11 11:31:59 81 0

原创 CRC循环冗余校验码

CRC(Cyclic Redundancy Check),循环冗余校验码,可以检测信息是否传输或存储错误,常用于外存储器的数据校验。 这个我有点印象。我读书的时候,还是386、486时代,那时硬盘很小,只有几百兆,更加没有U盘,拷贝东西基本用软盘。软盘分为5英寸和3.5英寸,大一的时候进机房,老师...

2020-05-09 23:25:04 111 0

原创 加密机制Kerberos原理

Kerberos是一种加密机制。Kerberos据说是希腊神话中一条三个头的看家神犬,凶猛异常。加密机制以此为名,估计是自认为很厉害,好打得吧。 Kerberos的设计意图,是希望整个认证过程不依赖于操作系统安全、主机物理安全、网址认证、网络安全之类,即使网络上传送的数据包被任意地读取、修改和插入...

2020-05-06 00:36:58 168 0

原创 垂直扩展和水平扩展

垂直扩展,就是升级机器,加强装备。换一台更贵更豪华的机器,CPU啦,内存啦,磁盘阵列啦,升之换之。以质取胜。 水平扩展,就是添加机器。一台不够,就加两台。以数量弥补质量的不足,或曰,量变达成质变。 垂直扩展的应用场景,可以是关系型数据库,如oracle,sql server,本质上都是单机版的数据...

2020-05-01 22:30:21 130 0

原创 WEB项目的安全性注意事项

近期接受了一个维护项目,客户组织了一次第三方安全测试,发现了一些问题,需要整改。整改内容,操作系统、数据库、代码都有涉及。整改过程中,我们自己也深受教育。现将代码部分的整改内容及相关措施整理如下: 一、任意类型的文件上传 【高危】 【描述】 任意文件上传漏洞主要是由于程序员在开发文件上传功能时,没...

2020-04-25 12:02:35 241 0

原创 oracle账号权限导致拒绝访问和启动(startup)无反应问题

合作伙伴的oracle又连不上了。 我又远程上去望闻问切。 oracle服务、监听服务都显示正在运行。但本机同样连不上。一阵装模作样,无聊的点击之后,我决定重启oracle服务。不料,重启失败,黄色的惊叹号,提示:拒绝访问! 怎么回事?看上去,是权限问题?oracle服务没启动,一切都是白搭。什么...

2020-04-21 19:34:27 183 0

原创 js应用函数数组实现依赖注入

听起来高大上,其实技术很简单的,就那么回事。 函数数组,就是一个数组咯,元素是函数。遍历这个数组,一个个执行之。 依赖注入,就是这个函数数组是个全局变量,模块可以往它里面插入自己的函数。 什么场景会用呢? 我这里有一个场景,是这样的,容器页里面有好多模块,这些模块各自不同,有各自要处理的东西,但也...

2020-04-19 13:06:57 138 0

原创 oracle sga_target参数值过小导致无法启动问题

合作伙伴的oracle无法访问。本机也不行,排除是防火墙之类的原因。 但是windows的服务列表上,service 、listener都好好的啊。 增加监听地址,搞来搞去,都不行。百思不得姐。 无聊中,在命令行方式下,用sqlplus,不指定数据库名,凭dba身份进入,查看里面的插件数据库情况:...

2020-04-19 12:21:07 168 0

原创 thymeleaf 条件判断语句if else

thymeleaf里面如何实现if else这样的判断? thymeleaf里,if是有的,但没有else。不过,可以将if + unless结合起来使用。 if好理解,但unless比较费劲。unless这个单词的意思是“除非”,但是在这里的话,后面还有一句话,完整理解是:“除非。。。才不”。 ...

2020-04-19 11:26:40 505 0

原创 mysql的主从复制和读写分离

从本质上来说,目前一些主流应用得数据库都是单机系统,像oracle、sql server等。但mysql作为一种发端自开源的数据库,很有自己的想法,很容易就可以支持多个数据库实例一同工作,一主多从,实行主从复制,读写分离,隐隐然有分布式数据库之风。 当然,这应该不是分布式数据库。主从模式,应该算集...

2020-04-11 22:28:11 109 0

原创 mysql的存储引擎

一、什么是存储引擎 数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以 获得特定的功能。 存储引擎这个概念似乎只有mysql有,存储引擎不同,mysql呈现...

2020-04-10 00:08:58 81 0

原创 HashMap

在Java世界里,HashMap应该是一个很基础的数据类型,Java的面试题里,似乎总喜欢问它的实现原理。 一、什么是HashMap HashMap是一种集合,是Map的一种具体实现类。对外表现为采用键值对的方式存储数据。 二、HashMap的实现原理和存储结构 据说它查找效率很高。这跟它的存储...

2020-04-06 11:08:53 124 0

原创 Redis的持久化

Redis支持持久化。 Redis 为了保证效率,数据缓存在了内存中,但是会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件中,以保证数据的持久化。 持久化策略有两种: RDB(Redis DataBase):快照形式,直接把内存中的数据保存到一个二进制文件 dump.rdb中,定时保...

2020-03-30 21:45:45 102 0

原创 Redis的线程模型

Redis是单线程。 采用单线程理由是 1)Redis 完全是基于内存的操作,CPU 不是 Redis 的瓶颈,其瓶颈最有可能是机器内存的大小或者网络带宽。 2)单线程容易实现 好处是采用单线程,避免了不必要的上下文切换和竞争条件,不存在多线程导致的 CPU 切换,不用去考虑各种锁的问题,不存在加...

2020-03-29 22:55:01 80 0

原创 Redis缓存问题

Redis就是用支持缓存的,它有什么缓存问题? 1、一致性问题 分布式系统的数据一般都是弱一致性,或最终一致性。因为有CAP原则,在一致性(Consistency)、可用性(Availbility)和分区容错性(Partition Tolerance,分布式系统在遇到某节点或网络分区故障的时候,仍...

2020-03-29 21:31:38 98 0

原创 Redis与memcached的区别

说到缓存,现阶段很自然就会想到Redis和memcached。那么,二者有何区别呢?

2020-03-29 18:46:53 123 0

原创 分布式锁

以下内容纯粹是个人理解,并不一定正确。在网上没有搜到特别满意的资料,先总结一下,记录下来,日后再出发。 一、什么是分布式锁 “分布式锁是控制分布式系统之间同步访问共享资源的一种方式。在分布式系统中,常常需要协调他们的动作。如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些...

2020-03-26 00:46:30 131 0

原创 Redis的主从复制和哨兵机制

Redis为了避免单点故障,所以可以配备多节点。其中又分为主从节点。所谓主从复制,读写分离,套路无非就是主节点负责写,从节点提供读。一旦主节点故障,那么还要从剩余的从节点中找到一个升任主节点。显然这是为了提高Redis的可用性。可靠性是指不出故障;可用性是指出了故障还能使用。 从节点要升级为主节点...

2020-03-25 00:10:11 85 0

原创 多租户

多租户(multi-tenancy technology),也可以叫多租户架构,或者多重租赁技术,是一种软件架构技术,探讨与实现如何于多用户的环境下共用相同的系统或程序组件,并且仍可确保各用户间数据的隔离性。 比如说,在网上部署了一套教务管理系统,然后给好多学校使用。系统只有一套,但每个学校进来,...

2020-03-23 22:58:05 117 0

原创 IO多路复用

什么是IO多路复用?就是异步阻塞IO。 服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型。 (2)同步非阻塞IO(Non-blocking IO):默认创建的socket都是阻塞的,非阻塞IO要求socket被设置为N...

2020-03-22 23:49:33 122 0

原创 线程安全与不安全

一、什么是线程安全 二、何时需要线程安全 三、

2020-03-19 14:30:08 77 0

原创 布隆过滤器

布隆过滤器,一种数据结构,用于判断一个东西一定不存在或有可能存在。 其本质,是一个bit数组。它将一个对象分拆作哈希运算,然后指向其中若干个BIT位,置为1。所以如果检查到某个对应BIT位为0,则可以肯定该对象不存在。如果该对象所有对应的BIT位都为1呢,是不是可以证明该对象存在呢?不能,因为有其...

2020-03-18 23:05:20 75 0

原创 GUID、UUID和snowflake

UUID:Universally Unique Identifier,通用唯一标识符。 GUID:Global Unique Identifier,全局唯一标识符。 这两者都差不多,基本上可以看做是同一种东西,只不过GUID是微软系的东东。目的都是让分布式系统中的所有元素,都能有唯一的标识,而不需...

2020-03-18 22:25:41 171 0

原创 基于http的API的安全性

基于http的API,怎么保证安全性? 当前的信息系统,安全第一道关卡,当然就是密码了。API也不例外。要么就是一次性登录,获得一个短期内有效的token;要么就是每次请求都带上账号和密码。 如果是每次都带上账号和密码,那么API站点必须要求使用https,否则有泄露风险。当然变通方法可以是采用非...

2020-03-17 12:16:35 78 0

原创 防御CSRF问题

CSRF,Cross-site request forgery,跨站点请求伪造。 简而言之,这个攻击就是伪造。伪造出一个合法站点的链接,诱使你去点击;或者伪造一个表单,提交给合法站点。 在一个系统里面,用你这个合法的账号,规规矩矩地浏览,使用,是不会出什么乱子的,你所点击的链接,提交的表单,都是开...

2020-03-16 18:16:24 96 0

原创 Maven添加Oracle的依赖及驱动

在一台新机器上下载一个spring boot项目代码,编译报错了,在我机器上是好好的。 报错是因为没有oracle的驱动: <dependency> <groupId>com.oracle</groupId> <artifactId>...

2020-03-16 16:42:35 77 0

原创 微服务

微服务架构现阶段甚嚣尘上。 啥是微服务? 微服务与SOA 微服务框架

2020-02-23 18:03:49 233 0

原创 系统设计的套路

一、架构风格、设计模式和惯用法 区别就是层级不同:架构风格 > 设计模式 > 惯用法。 二、架构设计 在需求分析与软件设计之间有一个衔接。 三、软件设计 分为结构化设计和面向对象设计。通常,我们这些半吊子水准,一知半解的人,什么概要设计、详细设计张嘴就来。但事实上,这两个概念来源于...

2020-02-23 12:28:56 145 0

原创 oracle 12C 服务器的监听设置

oracle 12c安装好了之后,本机访问没有问题,但局域网其他机器访问不了,报错说没有监听。 原因出在服务器的listener.ora这里,它只监听了localhost,没有监听它的局域网IP这个地址。 LISTENER = (DESCRIPTION_LIST = (DESCRIPT...

2020-02-21 18:11:21 335 0

原创 软件开发文档

软件(项目)可行性分析报告 软件(项目)开发计划/开发任务书 软件需求规格说明书 接口需求规格说明书 系统设计说明书 接口设计说明书 数据库设计说明书 用户手册 操作手册 测试计划 测试报告 软件配置管理计划 软件质量保证计划 开发进度月报 项目开发总结报告 软件产品规格说明书 软件版本说明书 ...

2020-02-12 22:18:25 342 0

原创 遗留系统的处理及其数据迁移准备工作

一、对待遗留系统的处理要分情况: 1、低技术低业务价值 淘汰,另起炉灶,简单粗暴。 2、低技术高业务价值 继承。所谓的继承,类似于面向对象中的继承,即新系统要完全兼容旧系统的业务功能。 3、高技术低业务价值 集成。因为技术含量高,修改未必能改得更好,而低价值则表明没必要更改,所以结果就是不改,集成...

2020-02-09 19:07:37 182 0

原创 关系型数据库与NoSql数据库的比较

一、关系型数据库与NoSql数据库的比较 1、并发支持 关系型数据库:通过事务和锁来支持并发,高并发情况下,执行效率较低。 NoSql:打破了传统关系型数据库范式的约束和事务一致性,因此并发性能高。 2、存储与查询 关系型数据库:利用关系表方式存储数据,通过SQL查询 NoSql:分布式数据库,支...

2020-02-08 18:32:11 491 0

原创 数据库共享锁(读锁)和排他锁(写锁)

为了保持数据的一致性,数据库提供了事务。但是,这只能解决单个会话的问题,并不能解决并发操作下数据的一致性。 并发操作下,数据会出现以下问题: 1、修改丢失 事务A与事务B从数据库中读入同一数据并修改,事务B提交的结果破坏了事务A提交的结果,导致事务A的修改被丢失。 2、脏读 事务A修改某一数据,写...

2020-02-07 20:35:16 1635 0

提示
确定要删除当前文章?
取消 删除