自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(82)
  • 收藏
  • 关注

原创 记录一次nginx+Websocket反向代理时报错504-gateway TimeOut和各种开发遇到的坑(wss链接404、ws链接400 bad Requset等等)

1、场景需要反向代理转发websocket链接。2、问题原因1、nginx路径未匹配上2、链接上后,在默认的http链接时长中没有发送心跳包,nginx自动关闭http链接,一般默认为1分钟3、http链接转发后并没有升级为websockt链接(Bad Request 400错误)3、解决方法1、路径未匹配检查nginx路径配置,如下配置:正确匹配地址:ws://localhost:8080/websocket/xxx如果是location /websocket {…}ws://loc

2022-10-26 15:16:51 4612

原创 函数内的ajax同步请求导致遮罩层失效、或者导致loading正在加载提示失效问题

功能需求编写点击按钮,弹出loading遮罩层提示正在加载中…,同时查询后台信息,拼接数据后渲染到列表时,为了保障渲染时,列表中的数据已经拼接完成。所以在for循环中使用同步ajax进行请求,在success方法中进行拼接。function showPrintJobList(){ var loadingTip = $('#loading'); loadingTip.show(); for(var i = 0;i < rwid.length;i++){ $.ajax({ url: x

2022-02-18 16:24:48 2719 3

原创 mysql一张表同时select和update,报错:You can‘t specify target table ‘xxx‘ for update in FROM clause

MySQL不允许SELECT FROM后面指向用作UPDATE的表报错信息:You can’t specify target table ‘xxx’ for update in FROM clause报错语句:update xxx t1 set a = (select a from xxx q where t1.b = q.b) where t1.a is null;原因:MySQL不允许SELECT FROM后面指向用作UPDATE的表解决:查询xxx表为为临时表并起别名,在进行条件过滤即可

2022-02-17 10:30:02 927 2

原创 Jstl标签:fmt:formatDate标签格式化中国标准时间或者时间戳

需求需要格式化服务器传回来的时间参数,一般为Sat Jan 29 2022 18:14:44 GMT+0800 (中国标准时间)。格式化为2022-01-29 18:14:44<!-- forEach标签类似for循环,循环遍历list,list中对象别名为demo --><c:forEach items="${page.list}" var="demo"> <tr> <!-- 别名.属性调用并显示值 --> <td> ${d

2022-01-29 18:18:44 904

原创 Mybatis获取插入数据后的自增主键的值

mapper.xml中的useGeneratedKeys和keyProperty属性利用mybatis提供的useGeneratedKeys和keyProperty属性可以在插入一条数据后,获取插入数据自增主键的值返回给前台。keyProperty属性绑定java实体类中的属性,useGeneratedKeys设置为true即可。LAST_INSERT_ID()函数该函数可以获取当前所插入表中,最后一条插入记录的id常见业务场景(一对多)1、插入记录主表,获取主表id,把主表id插入从表记录的主

2022-01-25 19:41:26 1598

原创 Mybatis中<trim>标签的用法和常见场景。prefix、suffix、prefixOverrides、suffixOverrides属性详解

Mybatis中<trim>标签的用法和常见场景trim标签属性常用场景拼接select语句时,在where后面需要消除可能存在的and时,就需要再where标签中使用trim标签和prefixOverrides属性。拼接insert语句时,表名后需要增加前缀->"("和后缀->")"和消除末尾不需要的后缀->","。然后需要前缀->"values ("和后缀->")"和消除末尾不需要的后缀->","拼接update语句时,在set后面需要消除末尾不需要的后缀->"

2022-01-25 19:33:32 4788

原创 Iterator迭代器报错:NoSuchElementException

问题原因使用Iterator迭代器循环遍历List时,在一次while循环中,连续多次调用next方法获取元素进行判断。因为next会让迭代器中的下标进行加1,然后在比对长度时,下标超出了List长度,抛出了NoSuchElementException异常。例如:List<String> list = new ArrayList<>();list.add("11");list.add("2");list.add("13");list.add("14");list.ad

2022-01-20 17:18:32 2456

原创 MySql编写自定义函数、存储过程语法(附详细案例,已解决问题:运行自定义函数报错,语法limit @变量名报错)

MySql编写自定义函数、存储过程语法

2022-01-04 09:48:52 1942

原创 @Scheduled实现定时任务(实现多个定时任务并发执行)

@Scheduled实现定时任务使用@Scheduled注解需要springboot启动类上添加注解@EnableScheduling@SpringBootApplication@MapperScan(basePackages = {"com.xxx.*.mapper"})@EnableSchedulingpublic class PictureProcessingAdminApplication{ public static void main(String[] args) { Sprin

2021-12-23 12:24:36 4218

原创 Idea遇到Errors occurred while compiling module的时候,可能遇到的问题(已解决)

错误信息xxx模块编译错误,java内部编辑器错误。问题原因模块或项目java版本不一致。解决思路1、首先检查pom文件制定的java版本是否与项目的一致打开项目编辑器,快捷键Ctrl+Alt+Shilt+S2、再检查模块的java版本是否一致可以看到也是一致的。3、再检查idea中配置的java项目版本是否一致Ctrl+Alt+S快捷键打开即可。很明显,可以看到两个模块的java版本都是1.5不是1.8,所以编译错误。修改后,编译成功。4、不是上述原因,再检查文件编

2021-10-18 18:38:32 11802 3

原创 MySql新增、修改、删除表字段、字段数据类型、长度等(附带各种实际案例语句)

1、新增字段注:常用于操作已存在表新增某字段。语法:ALTER TABLE 表名 ADD 字段名 字段数据类型(长度) [CHARACTER SET 字段编码 COLLATE 字段排序编码] [NOT NULL] [DEFAULT 0] [COMMENT ‘备注’] [FIRST|AFTER 表中已存在字段]其中,没有被[]括号包括的是必须有的,被[]括号包括的可以根据字段限制来自定义设置。CHARACTER SET 字段编码 COLLATE 字段排序编码:用于设置特殊字段的编码值。例如:表

2021-08-02 16:21:57 3469

原创 HTTP请求报错:405 Request method ‘GET‘ not supported解决方法!!(终极整理)

1.问题场景在项目中发送ajax请求时,控制台提示如下错误信息: org.springframework.web.HttpRequestMethodNotSupportedException: Request method ‘GET’ not supported2.异常解析这个异常翻译过来就是http请求的方法映射异常,后面的详情信息说,该GET请求不被支持。2.1异常原因1.该请求路径存在,但是请求类型不为GET请求。例如:前端请求://前端ajax发送请求$.ajax({ url:

2021-07-29 16:01:45 19881

原创 Windows常用批处理命令

前言批处理文件是一个“.bat”结尾的文本文件,这个文件的每一行都是一条DOS命令。可以使用任何文本文件编辑工具创建和修改。批处理是一种简单的程序,可以用 if 和 goto 来控制流程,也可以使用 for 循环。批处理的编程能力远不如C语言等编程语言,也十分不规范。每个编写好的批处理文件都相当于一个DOS的外部命令,把它所在的目录放到DOS搜索路径(path)中,即可在任意位置运行。C:\AUTOEXEC.BAT 是每次系统启动时都会自动运行的,可以将每次启动时都要运行的命令放入该文件中。大

2021-07-12 17:38:39 772 3

原创 oracle备份或还原数据库(expdp、impdp)

1.首先新建或更改虚拟目录因为数据泵方式——expdp(导出)和impdp(导入)需要虚拟目录路径。-- 语法create or replace directory 虚拟目录名 as '虚拟目录绝对路径';-- 例子:创建或修改data_backup逻辑目录create or replace directory data_backup as 'D:\app\Administrator\admin\bysjdb\dbdump\20210709';如果是第一次新建data_backup这个逻辑目录

2021-07-12 10:44:47 1316

原创 github常用拉取分支代码命令

1.git clone(推荐)// git拉取远程代码git clone https://xxx/xxx.git// git拉取远程指定分支下代码(-b 分支名称)git clone -b dev https://xxx/xxx.git2.git checkout提示:git checkout 分支名 切换分支git branch -a 是查看该项目的所有分支,包括远程分支git branch 只能查看本地分支// 拉取指定分支到本地分支并起别名和切换到该分支// 语法git c

2021-07-09 14:24:21 3916

原创 http请求头中的Accept的用处和常用的值

1.Accept属于http请求头,描述客户端希望接收的响应body 数据类型。就是希望服务器返回什么类型的数据。

2021-07-09 11:39:16 28911 2

原创 使用vue-cli创建项目,webpack打包

1.准备环境(nodejs下载和设置环境变量)2.

2021-07-09 11:38:48 652 2

原创 js和jq操作对象区别

jq:removeAttr();–对象js:removeAttribute();–DOM元素

2021-07-09 11:36:12 93

原创 已解决:Could not find artifact xxx

1.问题场景项目编译或者打包时,发现某个子包的文件无法被编译或者打包,并且报错。Could not find artifact xxx:pom:0.0.1-SNAPSHOT in nexus (maven仓库地址)2.问题原因因为项目子包是依赖父包的快照文件,父包快照文件不存在时,maven就会先去找本地仓库是否存在该快照文件,如果本地仓库不存在的话,就会向远程仓库请求该父包快照文件,如果本地仓库和远程仓库都找不到就会报错。3.解决方法(1)首先打开该项目的maven管理界面,找到该项目的根目录,

2021-07-08 16:31:26 69954 3

原创 maven常用命令大全(附详细解释)

1.常用打包命令mvn clean package -Dmaven.test.skip=true -- 跳过单测打包mvn clean install -Dmaven.test.skip=true -- 跳过单测打包,并把打好的包上传到本地仓库mvn clean deploy -Dmaven.test.skip=true -- 跳过单测打包,并把打好的包上传到远程仓库2.maven命令mvn -v //查看版本 mvn archetype:create //创建 Maven 项目 m

2021-07-08 16:28:25 40113 2

原创 oracle触发器报错表或视图不存在

1.问题场景:某个功能主表有个别的用户下的触发器,在保存的时候触发了触发器,但是触发器报错,所以根据事务导致保存失败。2.问题原因:功能主表的所属用户并没有对另外一个用户中的表的权限,所以导致编译和使用的时候报错,提示表或视图不存在,实际上是有这个用户和这个表的。3.解决方法授权grand all on 用户.功能主表 to 用户;4.其他授权授权a用户的表、序列、视图的所有权限给b用户-- 授权表权限(all、update、select、insert、delete)select 'gra

2021-07-08 16:27:57 4385

原创 已解决:u盘文件被病毒设置隐藏后,只能看到病毒生成的同名exe文件

1.查看attrib命令使用方法2.进入u盘,执行该命令attrib -s -h *.* /s /d3.杀毒

2021-07-08 16:27:07 327

原创 Windows命令行删除文件和文件夹

1.rd /? 命令帮助 删除文件夹rd /S 文件夹路径2.删除文件del 文件名.后缀

2021-07-08 16:23:06 7921

原创 nrm镜像源管理

1.[TypeError [ERR_INVALID_ARG_TYPE]: The “path” argument must be of type string. Received undefined错误详情internal/validators.js:124 throw new ERR_INVALID_ARG_TYPE(name, 'string', value); ^[TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument mus

2021-07-08 16:22:10 151

原创 webpack打包部署中clean-webpack-plugin插件不同版本的使用方式,还有默认下载4.0.0版本的巨坑

2.0.0版本引用方式,在webpack的打包的js文件引用然后在plugins中使用2.0.0版本设置信息new CleanWebpackPlugin({ // Simulate the removal of files // // default: false dry: true, // Write Logs to Console // (Always enabled when dry is true) // // defau

2021-07-08 16:21:12 558 2

原创 npm常用语法

持续更新-g 全局–save 更改package.json文件的依赖引用,不写代表仅仅下载依赖-dev 更改package-lock.json文件的依赖引用npm install 安装node依赖npm install -g 插件名@版本 --save 下载全局依赖和更改package.json文件npm uninstall 插件名 删除依赖npm view 依赖名 versions 查看依赖所有版本(versions),最新版本versionnpm run xxx 运行或打包项目

2021-07-08 16:18:55 254

原创 TamperMonkey编写脚本常用api中文版(附文档原地址和各种api案例)

TamperMonkey脚本api文档用户脚本头部@name@namespace@version@author@description@homepage, @homepageURL, @website and @source@icon, @iconURL and @defaulticon@icon64 and @icon64URL@updateURL@downloadURL@supportURL@include@match@exclude@require@resource@connect@run-at@gr

2021-07-08 16:17:13 43294

原创 git提交或克隆报错fatal: unable to access ‘https://github.com/tata20191003/autowrite.git/‘: Failed to connec

1.问题原因因为git在拉取或者提交项目时,中间会有git的http和https代理,但是我们本地环境本身就有SSL协议了,所以取消git的https代理即可,不行再取消http的代理2.解决方案在项目文件夹的命令行窗口执行下面代码,然后再git commit 或git clonegit config --global --unset http.proxy git config --global --unset https.proxy...

2021-07-08 09:59:32 314746 97

原创 已解决:mysql不是系统内部命令,无效命令

1.问题场景:在命令行中使用mysql命令登录,提示mysql不是系统内部命令。2.解决方法查看计算机属性—>高级系统属性—>环境变量—>系统变量—>path新增一条path属性的值为:指向mysql的bin目录下...

2021-07-07 15:26:15 535 1

原创 mysql导出(备份)导入(还原)数据库命令(详细)

mysql导出(备份)导入(还原)数据库命令(详细)备份1.打开命令行窗口,找到mysql服务安装的地方,进入bin文件夹下:还原1.打开命令行窗口,输入命令登录mysql2.创建新数据库3.进行还原错误记录扩展备份1.打开命令行窗口,找到mysql服务安装的地方,进入bin文件夹下:导出语法:mysqldump -u用户名 -p 数据库名 > 文件名称或路径和名称输入命令:mysqldump -uroot -p aaa > D:\aaa.sql输入密码后回车,无错误提示则

2021-07-07 15:25:06 4864

原创 已解决:求String类型数据各个编码的字节长度

1.转成string类型数据2.通过getBytes(字符集).length获取字节长度,除于1024为多少kb,再除于1024为多少mb

2021-07-07 15:23:27 854

原创 分析http请求数据常见异常

1.ConnectException连接超时访问该地址超时,无法连接该服务器。这种情况直接抓取该异常提醒即可。2.SocketTimeoutException读取数据超时注:可以用过URL类.getxxx方法获取url的主机名端口号等等(new URL(url))能连接服务器,但是与服务器交互时间超过请求最大连接时长。这种情况需要对目标主机进行ping操作确定网络速度。(kB/s)ping ip -l 1000 -n 4 -w 60000其中-l 1000 代表字节数默认为32,-n 4代表

2021-07-07 14:39:37 5365

原创 FastJson中的JSONObject对象常用方法

1.put(String key, Object value)方法,在JSONObject对象中设置键值对在,在进行设值得时候,key是唯一的,如果用相同的key不断设值得时候,保留后面的值。2.Object get(String key) :根据key值获取JSONObject对象中对应的value值,获取到的值是Object类型,需要手动转化为需要的数据类型3.int size():获取JSONObject对象中键值对的数量4.boolean isEmpty():判断该JSONObject对象是否

2021-07-07 14:31:18 666

原创 已解决:uniapp中的text标签的文字换行符使用失败

1.问题场景:从数据库取出一行带有\n换行符的文本,在uniapp中的text标签中的文字无法使用\n换行符进行换行,uniapp将其识别成文本了,所以要在赋值前做替换。2.解决方法:使用replace方法进行替换。注意:replace方法只能替换一个,若想全部替换需要用到表达式。使用String.repalce(/\n/g,’\n’)替换文本中的所有\n换行符,加上g是代表该正则全局匹配。...

2021-07-07 14:30:04 5059 2

原创 js设置定时器

setInterval(“代码或函数”,ms毫秒值); 返回值为int值的定时器id,使用clearInterval(int)关闭setTimeout(“代码或函数”,ms毫秒值); 同上,所以可以被clearTimeout(int)函数关闭

2021-07-07 14:28:47 582

原创 浏览器console窗口使用XMLRequest进行接口调试

1.XMLRequest进行请求1.1创建对象var XR = new XMLRequest();1.2打开链接XR.open(“GET”,“http://localhost:8080/test”,true);1.3发送请求XR.send();1.4读取响应体数据XMLRequest响应对象数据格式:一般为responseText中,XR.responseText即可。1.5readyState属性,onreadystatechange事件用于判断链接所处状态。例如:很明显可以

2021-07-07 14:27:19 1185

原创 Oracle分割字段的值并且返回多行数据(使用regexp_substr和regexp_count函数)

1.需求需要将数据库的表中某个字段的值,根据逗号来分割后,返回多行数据。2.实现过程2.1REGEXP_SUBSTR()function REGEXP_SUBSTR(String, pattern, position, occurrence, modifier)string:需要进行正则处理的字符串pattern:进行匹配的正则表达式position:起始位置,从字符串的第几个字符开始正则表达式匹配(默认为1) 注意:字符串最初的位置是1而不是0occurrence:获取第几个分割出来的组

2021-07-07 14:25:29 5486 1

原创 已解决:ORA-00932:数据类型不一致:应为-,但却获得CLOB

1.问题原因Oracle的sql中的使用函数返回的值的字段没有对应的类型,只是一段文本。所以在使用该字段关联的时候就会报错。2.解决办法使用to_char()方法将文本转成字符串类型即可。

2021-07-07 09:16:50 46315 2

原创 使用fetch进行接口调试

fetch的常用场景

2021-07-06 16:49:19 1312 2

原创 前端error种类

Error的种类除了通用的Error构造函数外,JavaScript还有7个其他类型的错误构造函数。InternalError: 创建一个代表Javascript引擎内部错误的异常抛出的实例。 如: “递归太多”。非ECMAScript标准。RangeError: 数值变量或参数超出其有效范围。例子:var a = new Array(-1);EvalError: 与eval()相关的错误。eval()本身没有正确执行。ReferenceError: 引用错误。 例子:console.log(b)

2021-07-06 16:48:42 238

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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