- 博客(76)
- 资源 (1)
- 收藏
- 关注
原创 curl命令简单使用
curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。一般可以用来验证接口是否正常可以调用。
2023-06-28 23:55:32
714
原创 get请求缓存问题
需求开发完 却发现只有第一次是正常调用get请求进行认证的,后续再打开第三方的系统都是无效的,通过第三方系统的日志发现 后面并没有对第三方系统进行调用get请求认证。通过在部署项目的服务器抓包,发现除了第一次发起了get认证请求,后续的请求都没有发现调用get认证请求,于是就考虑是浏览器的问题了。所以问题的原因就找到了,是因为第一次调用get鉴权请求成功,会把响应结果保存在缓存中,所以后续的get认证请求就走缓存了,发起了get请求,但是并没有调用到第三方平台的接口。这个时候,浏览器就不会与服务器交互。
2023-04-26 22:02:14
1826
1
原创 根据地图经纬度计算两点间的距离
经纬度丢失计算距离1.纬度相同,经度不同在纬度相同的情况下:经度每隔0.00001度,距离相差约1米;每隔0.0001度,距离相差约10米;每隔0.001度,距离相差约100米;每隔0.01度,距离相差约1000米;每隔0.1度,距离相差约10000米。2.经度相同,纬度不同纬度每隔0.00001度,距离相差约1.1米;每隔0.0001度,距离相差约11米;每隔0.001度,距离相差约111米;每隔0.01度,距离相差约1113米;每隔0.1度,距离相差约11132米。最近
2022-08-11 20:52:24
5697
原创 JS中 正则表达式的应用
正则表达式 在前端中的应用也是比较常见的,我们在有时候也需要 用js 对某些字符串进行查找\捕获 或者 替换.stringsearchsearch() 方法 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置。'Hello World!'.search(/world/i); // 6 返回匹配出的第一个字符串的开始位置索引,与 indexOf 方法类似,但是 search方法 可以支持 正则表达式,功能更加强大 ...
2022-02-16 23:25:16
388
原创 Redux学习3 useSelector 与 useDispatch
Redux学习3 useSelector 与 useDispatch在 react-redux 中学习了使用connect方法对ui组件进行加强,从而使得组件可以通过mapStateToProps和mapDispatchToProps来进行将 redux中的state的数据 存进props来读取和修改redux的数据,但是如果每个组件都要去利用connect方法进行加强,会太麻烦,所以reacct-redux 新版本7.1推出了hooks风格的api,可以更加简单的去操作redux的数据。u
2021-12-15 00:27:56
1668
原创 React启动后报错TypeError: Cannot read properties of undefined (reading ‘forEach‘)
浏览器安装 react develop tools后, React启动后报错TypeError: Cannot read properties of undefined (reading ‘forEach‘)
2021-12-05 21:44:56
6945
原创 Redux 入门学习(1)
Redux学习笔记redux 和react没有必然关系,redux可以应用于各种框架,包括jquery,甚至js都可以使用redux,只不过redux和react更加搭配。redux也推出了专门应用于react的react-redux。1. Redux概述Redux就是一个JavaScript容器,用来进行全局的状态管理Redux三大核心单一数据源头(所有的state的数据都存储在一个Object Tree中)State只读(要想修改只能通过发送action来进行修改)使用纯函数来进行修改
2021-11-28 22:57:28
629
原创 React学习6(React hook)
React Hooks 学习笔记react组件类型有两种,一种是class组件(类组件),,另一种是function组件(函数组件),react 之前主流开发是使用class 组件来完成复杂的业务逻辑,因为class组件有state 可以管理数据,,可以通过setState来只渲染state中发生改变的数据,以及各种生命周期函数也可以控制不同时间要执行的功能, 比函数组件更有优势。但是class组件比较大,更加占用性能。因此现在更倾向于使用函数组件来实现业务,而hooks就是弥补函数组件的状态管理的一种技
2021-10-31 22:09:56
280
转载 2021-07-05 Idea debug
1、这里以一个web工程为例,点击图中按钮开始运行web工程。2、设置断点3、使用postman发送http请求4、请求发送之后会自动跳到断点处,并且在断点之前会有数据结果显示5、按F8 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则不进入当前方法体内,跳到下一条执行语句。6、按F7在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则进入当前方法体内,如果该方法体还有方法,则会进入该内嵌的方法中 .7、继续按F7,则跳到StopWatch() 构造方法中
2021-07-05 17:00:33
515
原创 Redis基础知识
Redis基础知识1 默认16个数据库 默认使用第0个,可以使用select来切换数据库- 切换到索引为3的数据库 select 索引select 3 - 查看数据库的大小占用 DBSIZE- 查看数据库所有的key keys *清除当前数据库的数据 flushdb清除全部数据库内容 flushallRedis是单线程的!Redis是很快的,官方表示,Redis是基于内存操作,CPU不是Redis的性能瓶颈,Redis的瓶颈是根据机器的内存和网络带宽,既然可以使用单线
2021-07-04 22:16:14
84
原创 Redis性能测试
Redis性能测试redis-benchmark是一个压力测试工具官方自带的性能测试工具redis-benchmark 命令参数进行简单的性能测试# 测试1000个并发连接 100000请求redis-benchmark -h localhost -p 6379 -c 100 -n 100000
2021-07-02 22:24:10
83
原创 Redis Linux安装
Linux安装1 下载 redis-6.2.4.tar.gz2 解压 redis-6.2.4.tar.gz3 进入解压后的文件,redis的配置文件4 基本的环境安装yum install gcc-c++makemake install5 redis默认的安装路径 usr/local/bin6 备份修改配置文件 redis.conf7 redis默认不是后台启动的,需要修改配置文件,保证是后台启动 redis.conf 中 daemonize 改为yesd
2021-07-02 19:55:57
93
2
原创 Redis入门
Redis入门redis 是什么?Redis (Remote Dictionary Server) 远程字典服务是一个开源的使用 ANSI C语言编写,支持网络,可基于内存亦可持久化的日志型、Key-Value数据库,提供多种语言的API 。redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步性能高 读数据110000 次/s,写数据 80000次/s。Redis 是一个高性能的key-value
2021-06-21 23:02:39
82
原创 2021-06-17非关系型数据库NoSQL
NoSQL特点解耦!1.方便扩展(数据之间没有关系,很好扩展!)2.大数据量高性能(Redis 1秒写8万次,读取11万,NoSQL的缓存记录级,是一种细粒级的数据,性能比较高)数据类型多样性!(不需要事先设计数据库!随取随用!)、传统的RDBMS(关系型数据库)和NoSQL传统的RDBMS- 结构化阻止- SQL- 数据和关系都存在单独的表中- 严格的一致性- 基础的事务- ...NoSQL- 不仅仅是数据- 没有固定的查询语言- 键值对存储,列存储,文档存储,图.
2021-06-17 22:16:48
181
1
原创 2021-06-15 数据库横表和纵表的区别
数据库建表有两种方式,横表和竖表。我的理解就是 横表就是一个业务对象对应1条记录,比如学生有各科成绩,要设计成横表的话就是表设计就可以是 通过一条记录来存储学生的各科成绩,一般横表需要字段都是确定好的,要不然还需要修改表结构横表示例:uidChineseMathEnglishaaa908090纵表就是一个业务对象用多条记录来存储,将业务对象的字段属性拆开,用多条记录来存储的话 可拓展性会比较高.比如还想加其他学科只需要再添加一条记录即可.纵表示例:
2021-06-15 16:40:42
4940
原创 2021-06-02 解决listagg 拼接字段返回过长 (Ora-01489 result of String concatenation is too long)
在Oracle 查询数据时有时候会需要用到 列转行, 把多行拼接在一起,一般我习惯使用listagg()函数,但是如果拼接的记录太多会报错.listagg 拼接返回的类型为varchar ,最大长度为4000,当长度过长时会报错, ora-01489 result of String concatenation is too long此时的解决思路就是 将返回的varchar类型 转换为clob类型,这样长度就可以满足返回值的要求了.1.使用xmlagg 函数 ,使用方式和listagg类似,但是.
2021-06-02 16:50:18
14566
原创 jdbc 批量执行sql
最近有个需求是需要在java 后端执行导入,数据量比较大, 需要对数据进行很多操作,最后要执行插入数据操作, 一开始先组织好插入数据的sql语句放在数组中,使用的是 jdbcTemplate.batchUpdate()方法,后来发现当数据比较多 ,成千上万条时,他的插入效率比较慢,所以又改用了jdbc 的批量插入.插入速度有了很大的提速方法1直接使用了jdbctemplate内部封装的batchUpdate方法,他的底层也是用了 jdbc 的批量执行,但是执行效率要比 正常使用jdbc 批量执行要.
2021-06-02 11:59:14
2694
原创 判断数字 的二进制中某位是否为0
// target 需要判断的数字, count 判断target 数字的 二进制中 第count位是否为0 public boolean isZero(int target,int count){ return (target >> count &1) == 0 ; }
2021-05-28 20:32:00
1466
原创 2021-05-21 Oracle Merge Into 更新表数据
Merge into使用版本: Oracle 9 及以上版本作用:在平常更新表数据时 有时候需要判断存在记录就更新数据,不存在则插入记录,我们需要先判断数据是否存在,需要两条sql, 现在使用merge into 就可以一条sql解决 更新数据和插入数据的问题了语法 merge into t1 -- 要更新数据的目标表 using t2 -- 要用来更新目标表数据的源表 on (条件) -- 目标表与源表的查询结果 when matched then update
2021-05-21 19:12:50
1152
原创 2021-04-26 道格拉斯算法(Douglas)稀释地图轨迹上的点
道格拉斯算法简介道格拉斯-普克算法(Douglas–Peucker algorithm,亦称为拉默-道格拉斯-普克算法、迭代适应点算法、分裂与合并算法)是将曲线近似表示为一系列点,并减少点的数量的一种算法。它的优点是具有平移和旋转不变性,给定曲线与阈值后,抽样结果一定。算法思想算法的基本思路是:对每一条曲线的首末点虚连一条直线,求所有点与直线的距离,并找出最大距离值dmax ,用dmax与限差D相比:若dmax <D,这条曲线上的中间点全部舍去;若dmax ≥D,保留dmax 对应的坐标点
2021-04-26 11:13:28
1129
原创 Oracle数据库中文汉字所占字节数 及解决ORA-12899: value too large for column
该报错是因为插入的该字段的值 超出了 该表字段设计的长度,一般就是将表字段加长就可以了,比如说 varchar2(100) 改成varchar2(200),当然 具体要改成多长看该字段要存储的内容长度而定.ORA-12899最容易出现在存储汉字中,因为ORACLE数据库它可以存储字节或字符,例如 CHAR(12 BYTE) CHAR(12 CHAR)的意义是不同的.一般来说默认是存储字节,你可以查看数据库参数NLS_LENGTH_SEMANTICS的值. 执行sql show parameter n
2021-04-20 10:45:47
1331
原创 2021-04-19 leetcode 26. 删除有序数组中的重复项 双指针法
题目描述删除有序数组中的重复项给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例 1:输入:nums = [1,1,2]输出:2, nums = [1,2]解释:函数应该返回新的长度 2 ,并且原数组 nums 的前两个元素被修改为 1, 2 。不需要考虑数组中超出新长度后面的元素。示例 2:输入:nums = [0,0,1,
2021-04-19 22:13:05
209
原创 Oracle number(m,n)类型的大小和比例 ,解决ORA-01438
ORA-01438 报错 超出此列允许精度,一般是number字段出错了,录入的数字精度超过了 表允许的精度,可以修改表字段的大小和比例.Oracle 表字段类型 number 来存储数字,与varchar2类型相似.大小的就是总长度为多少位, m 代表数字的总位数.比例 n代表 小数的精度位数, 比如说 number(5,2) 就是 整数3位,小数2位,例如 123.12.number(0,0) 是不加限制.可以随意插入数字...
2021-04-19 10:13:27
2992
原创 2021-04-15 Oracle使用存储过程来处理 sql 插入长文本 报错ORA_01704
问题描述 :在Oracle 中有的表字段需要存储的数据比较长,需要用clob等字段来存储,如果要插入的该字段很长的话,执行该sql 可能会报错, Oralce 会报错 ORA_01704,原文字符串太长 , 可以使用 存储过程来解决这个问题.存储过程语法DECLARESTR CLOB;BEGIN STR:=' 长文本 ;INSERT INTO A(ID,TEXT) VALUES(SYS_GUID(),STR);END;上面sql语句 向 A表插入了一条记录,id字段取uuid,tex
2021-04-15 18:45:38
483
原创 2021-04-13 Oracle将查询结果来更新表数据
最近遇到需求,在将excel的数据导入到oracle数据库时,需要将入表的数据更新其他的一部分字段数据.举个例子 : 现在oracle数据库存在数据表users 用户表(userId 用户id,deptNo 用户的部门编号,deptName 用户部门名称, level 用户等级, levelName 用户等级名称);department 部门表(deptNo 部门编号, deptName 部门名称)levels 等级表 (level 等级 ,levelName 等级名称)假设想用户表(users)
2021-04-13 22:36:46
3252
原创 2021-04-04 leetcode 781. 森林中的兔子
题目描述森林中,每个兔子都有颜色。其中一些兔子(可能是全部)告诉你还有多少其他的兔子和自己有相同的颜色。我们将这些回答放在 answers 数组里。返回森林中兔子的最少数量。示例:输入: answers = [1, 1, 2]输出: 5解释:两只回答了 “1” 的兔子可能有相同的颜色,设为红色。之后回答了 “2” 的兔子不会是红色,否则他们的回答会相互矛盾。设回答了 “2” 的兔子为蓝色。此外,森林中还应有另外 2 只蓝色兔子的回答没有包含在数组中。因此森林中兔子的最少数量是 5:
2021-04-04 21:46:21
135
原创 2021-04-02 leetcode面试题 17.21. 直方图的水量
题目描述给定一个直方图(也称柱状图),假设有人从上面源源不断地倒水,最后直方图能存多少水量?直方图的宽度为 1。上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的直方图,在这种情况下,可以接 6 个单位的水(蓝色部分表示水)。示例:输入: [0,1,0,2,1,0,1,3,2,1,2,1]输出: 6来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/volume-of-histogram-lcci提交结果解题思
2021-04-02 13:40:32
142
原创 2021-0331 leetcode之子集问题78 与 90
题目描述子集给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。示例 1:输入:nums = [1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]示例 2:输入:nums = [0]输出:[[],[0]]子集 II给你一个整数数组 nums ,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子
2021-03-31 21:21:28
120
原创 2021-03-30 leetcode 74、搜索二维矩阵
题目描述搜索二维矩阵编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。示例 1:输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 3输出:true示例 2:输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 13输出:false题
2021-03-30 17:28:12
77
原创 2021-03-29 leetcode之190. 颠倒二进制位
题目要求颠倒二进制位颠倒给定的 32 位无符号整数的二进制位。请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。在 Java 中,编译器使用二进制补码记法来表示有符号整数。因此,在上面的 示例 2 中,输入表示有符号整数 -3,输出表示有符号整数 -1073741825。进阶:如果多次调用这个函数,你将如何优化你的算法?示例 1:输入:
2021-03-29 22:38:48
84
原创 2021-03-22 java 求二进制数字中 1的个数
最近刷力扣时 遇到了好几个题目都是计算 数字 的二进制形式中 1的个数,所以特意在此记录一下。其实最基本的办法就是先求出 数字的二进制,然后去对每一个字符去遍历判断是否为1就可以了,现在就是需要先计算出 数字的二进制形式。数字转换为二进制:正整数转二进制 : 正整数只需要一直除以二 取余 然后将余数 倒序排列就可以了。例如 : 13 转为二进制 的话 13%2 = 1 ,13/2 = 6, 6%2=0, 6/2=3, 3%2=1, 3/2= 1,1%2= 1,1/2=0,将余数倒序排列就是
2021-03-29 22:08:02
241
原创 2021-02-03 layui 数据表格 实现全局排序
layui 数据表格在展示数据时 虽然感觉样式不是很好看,但是他的各种功能做的感觉还是比较完善,包括可以兼容在各种分辨率 下显示完整的数据,排序等等。在table的表头参数里加上sort :true,就回开启排序,但是这种排序只是按照该字段的升序或者降序的顺序 将当前页的数据进行分页,...
2021-02-05 08:29:03
5024
2
原创 2021-01-29 Oracle SQL实现动态设置查询条件
之前遇到一个需求:在查询某个表(A)的数据时需要按照查询规则来查询,就是在另一个表(B)配置一条记录,按照这条记录的设置来查询A表符合条件的数据,B表记录规则如下,数据为多个查询条件之间用‘ ’空格来连接,...
2021-02-03 17:07:21
1896
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人