- 博客(195)
- 资源 (14)
- 收藏
- 关注
原创 vue实现聊天框自动滚动
1、聊天数据实时更新渲染到页面 2、页面高度随聊天数据增加而增加 3、竖向滚动 4、当用户输入聊天内容或者接口返回聊天内容渲染在页面后,自动滚动到底部 5、提供点击事件操控滚动条上下翻动 vue:@vue/cli 5.0.8 taro:v3.4.1 Element 接口的 scrollIntoView() 方法会滚动元素的父容器,使被调用 scrollIntoView() 的元素对用户可见
2023-05-12 11:37:12
6553
3
原创 centos搭建vue3运行环境
1.测试 node -v 时报错:version `GLIBC_2.27' not found (required by node)原因:版本不符,重新安装低版本的node。
2023-04-25 08:59:58
1262
原创 正则表达式——Pattern.DOTALL
项目测试过程中,测试发现短信内容无法正常解析成2个部分。代码如下: 运行代码后,控制台输出: failed 经过查阅资料,发现原因是:正则表达式中 “.” 可以匹配除换行符(\n、\r)之外的任何单个字符,如果要匹配包括 '\n' 在内的任何字符,需要使用像"(.|\n)"的模式。 修改代码如下: 运行代码后,控制台输出:phone number: 13800000000 目前虽然可以满足需求了,能正常匹配带 “\n”的字符
2022-07-06 10:48:28
1803
原创 Maven 警告 expected START_TAG or END_TAG not TEXT
今天开始看新项目的代码,拉取代码后,在IDEA中导入pom.xml的依赖包,却报错:expected START_TAG or END_TAG not TEXT看具体提示是说settings.xml文件存在空格等不规范字符。但我用nodpad ++ 打开 settings.xml 文件,再三检查都没发现。查找了几篇资料后,在 IDEA 中新建了一个txt文件,把 settings.xml 中的文本拷贝进去,果然发现又多余的字符,删除这些字符后,重新把文本拷贝覆盖 s...
2022-05-07 17:42:51
1625
原创 Mybatis配置多数据源后saveBatch()出现Mapped Statements collection does not contain value
年前发布的最后一个版本,上线前回归其他接口,发现出现大量接口保存失败TvT由于出现的异常都是Mybatis相关的,很容易联想到这个版本是否对applicationContext.xml文件中mybatis配置部分进行了修改。下面为applicationContext.xml中部分配置: <!-- MyBatis会话工厂 --> <bean id="first_mysql_sdkMyBatisSqlSessionFactory" class="com.b...
2022-02-07 16:50:00
4618
1
原创 fastjson使用JSON.toJSON()方法出现StackOverflowError
上个月底,邮箱每到中午都会收到告警邮件,内容如下:logLevel = "ERROR" AND (message CONTAIN "java.lang.StackOverflowError" OR message CONTAIN "java.lang.OutOfMemoryError") 既然每天都那么准点,大概率是定时任务导致的了,很轻松就找到了每天中午12点开始跑的定时任务。但是问题代码出现在哪里呢?模拟了同样的入参,去调用该接口,可是无法重现该错误。而打...
2022-02-07 15:32:11
4779
原创 maven依赖包冲突如何处理 SLF4J: Class path contains multiple SLF4J bindings
前言在开发项目的时候,发现启动项目的时候控制台会打印Class path contains multiple SLF4J bindings ,但是没有影响项目的启动,也就没有理它。但是多次发现在容器部署之后,没有找到日志文件。担心上了生产环境也会出现这个问题,请教了同事,了解到他之前开发另一个项目也遇到了这个问题。原因也是因为 Maven 依赖有多个 slf4j-log4j12 ,或者不同版本的 slf4j-log4j12;有时候并不是 pom.xml 里面有多个...
2021-11-12 17:09:20
1783
原创 MySQL慢查询优化实践小结
前不久在跟同事交流慢查询优化的技巧时,遇到一些分歧,上网查阅资料后,纠正了我一些错误的认识,现在记录一下。疑问点1MySQL数据库查询记录时每次是否只能使用一个索引?什么情况下能使用两个索引呢?MySQL5.0之前,一个表每次只能使用一个索引,无法同时使用多个索引分别进行条件扫描。但从5.1开始,引入了 index merge 优化技术,对同一个表查询可以使用多个索引分别进行条件扫描。where 中可能有多个条件(...
2021-11-12 15:33:16
848
原创 关于使用URLConnection下载文件时出现无限等待线程挂起的问题
前言清明假期前,我们需要执行一个批量操作,把腾讯云的视频下载下来,使用python脚本压缩并转码后上传到腾讯云另一个桶。写完代码后,跑起来观察了一会,一切正常。然而回来后发现,线程卡住了,而且没有任何的日志输出,所以完全不知道问题出在哪里。重启容器后,代码继续正常跑,可是跑了几个小时后,再次出现。问题排查 代码如下:public boolean downloadNet(String videoUrl, String filePath) throws...
2021-09-16 09:41:18
1200
原创 Java之函数编程
前言 本系列文章为在《告别996,开启Java高效编程之门》学习过程中的学习笔记和课外资料补充,希望可以方便自己和其他需要的同学查阅。Lambda表达式简介 ①Java8引入的函数式编程风格; ②可以理解为一种匿名函数的代替; ③通过行为参数传递代码。Lambda表达式的形式(parameters) -> expression(parameters) -> { stat...
2021-07-25 20:20:50
463
2
原创 go连接mysql测试时报panic: runtime error: invalid memory address or nil pointer dereference
在测试msyql增删改查时,单元测试报出错误:panic: runtime error: invalid memory address or nil pointer dereference代码如下:import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql")var ( dbConn *sql.DB err error)func init() { conn...
2021-07-11 12:33:05
3270
5
原创 Goland创建并运行一个go项目
一、go安装1、建议去go语言中文网下载,网址:https://studygolang.com/dl,下图是下载页面及包介绍:2、因为我是windows系统,所以选择Windows版安装。其他系统按照需要下载相应的版本即可。下载安装包后,一直选择 next即可。安装过程中,我选择安装目录为:D:\Program Files\Go 。3、打开cmd命令行窗口,并输入“ go version ”可以查看当前Go版本,同时检测是否安装成功。...
2021-07-04 20:12:45
8978
原创 Spring Boot集成Redis实现缓存
前言Spring Boot 集成 Redis 实现数据缓存,只需要添加一些注解,就无侵入地使用缓存了,无需额外的代码。步骤Spring Boot 集成 Redis 实现缓存主要分为以下三步:1)加入 Redis 依赖;2)加入 Redis 配置;3)添加 Redis 缓存相关注解。一、加入依赖首先我们创建一个项目,并在项目中加入 Redis 依赖,项目依赖如下所示(由于使用 Redis 连接池,需额外引入 commons-pool2):<dependency.
2020-10-24 23:31:26
696
原创 Fiddler--利用Fiddler模拟数据
前言本周做的一个需求中,修改接口吐出的数据,需要查看动画效果是否正常,由于所用的web模拟工具不能完美模拟效果,需要真机实测。找到了测试指导了一下,然后查找相关资料,通过Fiddler工具,利用手机上的app进行了数据联调。Fiddler工具很好用,也很强大,觉得大家都可以来学习一下,特此记录一下。一、Fiddler简介 Fiddler是很好用的Web调试工具之一, 它能记录所有客户端和服务器的http和https请求。允许你监视、设置断点、甚至修改输入输出数据。Fiddl...
2020-07-31 23:06:19
1411
原创 Java基础(八)Java封装
封装封装,是将类的某些信息隐藏在类内部,不允许外部程序直接访问。通过该类提供的方法来实现对隐藏信息的操作和访问,作用:①隐藏对象的信息;②留出访问的接口。特点1)只能通过规定的方法访问数据;2)隐藏类的实例细节,方便修改和实现。实现步骤修改属性的可见性 —— 设为private创建getter/setter方法 —— 设为public 用于属性...
2020-06-30 22:07:42
236
原创 Java基础(七)面向对象
什么是面向对象在日常生活中,人们会关注对象,关注事物信息,关注现实存在的事物的各方面的信息。因此,面向对象,就是从对象的角度出发,根据事物的特征进行程序设计。 类和对象类是模子,用来确定对象将会拥有什么样的特征(属性)和行为(方法)。对象是类的实例表现。类是对象的类型。对象是特定类型的数据 对象:用来描述客观事物的一个实体 类:具有相同属性和方法的一组对象的集合 定义类 public class 类名 { ...
2020-06-21 22:45:43
253
原创 修改Gradle的jar包缓存路径
前言 在使用Gradle管理项目依赖包时,发现系统盘被占用存储越来越多,本来系统盘就快满了,所以赶紧更改一下Gradle下载jar包的缓存路径。步骤一、创建存储jar包的目录,例如我新建了 D:\gradle\cache 文件夹,可按照个人习惯创建。二、新增环境变量GRADLE_USER_HOME 。三、重启IDEA(非必要)注意:如果你在新增环境变量过程中,Intellij IDEA 是打开状态,需要重启idea,这时候gradle下载缓存jar包的路径...
2020-06-14 09:27:00
3207
原创 Java基础(六)方法
什么是方法所谓方法,就是用来解决一类问题的代码的有序组合,是一个功能模块。通过把这些有序代码封装成方法,我们就可以很方便地通过方法的名字,在其他地方直接调用,而不需要写重复的代码,减少了代码冗余。方法声明 语法格式: 访问修饰符 返回类型 方法名(参数列表) { 方法体 } 例子: public static void main(String[] args) { Sys...
2020-06-07 15:53:09
305
原创 Java基础(五)数组
什么是数组数组,是相同类型的数据按顺序组成的一种引用数据类型。一维数组数组声明语法格式: 数据类型[] 数组名; 数据类型 数组名[];例子: int[] myIntArr; int myIntArr[]; char[] chArr; String[] strArr;数组创建语法格式一:先声明后创建。 数据类型[] 数组名; 数组名 = new 数据类型[数组长度];例子: ...
2020-05-31 22:46:48
3075
原创 Java基础(四)流程控制
流程控制语句我们在写Java代码的时候,可以说,都离不开三大流程控制语句:顺序、选择、循环。选择结构if结构,if-else结构 if(条件) 语句; if(条件){ 语句; } if(条件) 语句; else 语句; if(条件){ ...
2020-05-19 23:45:03
244
原创 Java基础(三)Java运算符
表达式 表达式由运算符和操作数组成 如: 5 num1 num1+num2 sum=num1+num2运算符 算术运算符 赋值运算符 关系运算符 逻辑运算符 条件运算符 位运算符算术运算符 算术运算符主要用于进行基本的算术运算,如加法、减法、乘法和除法等。...
2020-05-16 21:46:23
450
原创 Java基础(二)Java的常量与变量
变量与常量标识符标识符的命名规则:1)标识符可以由字母、数字、下划线(_)和美元符($)组成,不能以数字开头;2)标识符严格区分大小写;3)标识符不能是Java关键字和保留字;4)标识符的命名最好能反映出其作用。例如合法的标识符: Hello , hello_test , _hello , Void , abc$123 ,非法的标识符:...
2020-05-06 22:36:13
443
原创 PHP基础复习(九)——网络协议
前言本系列文章主要是根据实战视频《360大牛:全面解读PHP面试》学习过程中记录的学习笔记,期间也会加入查找资料和平时学习中学习到的知识。HTTP协议状态码五类响应1xx (临时响应) 表示临时响应并需要请求者继续执行操作的状态代码。2xx (成功) 表示成功处理了请求的状态代码。3xx (重定向) 表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定...
2019-11-17 23:23:48
289
原创 PHP基础复习(八)——会话控制
前言本系列文章主要是根据实战视频《360大牛:全面解读PHP面试》学习过程中记录的学习笔记,期间也会加入查找资料和平时学习中学习到的知识。CookieCookie是一种服务器发送给客户端的片段信息,存储在客户端的内存或磁盘中。如下创建 test.php 并编辑如下代码<?phpsetcookie('name','pino.pan');echo $_COOKIE['n...
2019-10-31 21:20:16
333
原创 PHP基础复习(七)——文件及目录处理
前言本系列文章主要是根据实战视频《360大牛:全面解读PHP面试》学习过程中记录的学习笔记,期间也会加入查找资料和平时学习中学习到的知识。fopen()函数用来打开一个文件,打开时需要指定打开模式。打开模式:r/r+ r以只读模式打开,并把文件指针指向文件开头。r+以读写模式打开,并把文件指针指向文件开头。w/w+ w以只写模式打开,并把文件指针指向文件开头,同时把文...
2019-09-29 22:02:47
282
原创 PHP基础复习(六)——正则表达式
前言本系列文章主要是根据实战视频《360大牛:全面解读PHP面试》学习过程中记录的学习笔记,期间也会加入查找资料和平时学习中学习到的知识。作用正则表达式的作用:分割、查找、匹配、替换字符串。分隔符正斜线(/)、hash符号(#)以及取反符号(~)通用原子\d 0-9\D 除了0-9\w 数字(0-9)字母(...
2019-09-22 23:35:07
283
原创 PHP基础复习(五)——自定义函数及内部函数
前言本系列文章主要是根据实战视频《360大牛:全面解读PHP面试》学习过程中记录的学习笔记,期间也会加入查找资料和平时学习中学习到的知识。变量的作用域变量的作用域也称变量的范围,变量的范围即它定义的上下文背景(也是它的生效范围)。大部分的PHP变量只有一个单独的范围。这个单独的范围跨度同样包含了include和require引入的文件。在函数体内部引用外部变量,可以使用global...
2019-09-15 22:37:43
642
原创 PHP基础复习(四)——流程控制
前言本系列文章主要是根据实战视频《360大牛:全面解读PHP面试》学习过程中记录的学习笔记,期间也会加入查找资料和平时学习中学习到的知识。PHP的遍历数组的三种方式以及各自区别 ①使用 for 循环②使用 foreach 循环③使用 while、list()、 each() 组合循环区别:①for循环只能遍历索引数组;foreach可以遍历索引和关联数组;联合使用l...
2019-09-08 23:47:42
211
原创 PHP基础复习(三)——运算符
前言本系列文章主要是根据实战视频《360大牛:全面解读PHP面试》学习过程中记录的学习笔记,期间也会加入查找资料和平时学习中学习到的知识。错误控制符php支持一个错误运算符:@。当将其放置在一个PHP表达式之前,该表达式可能产生的任何错误信息都将被忽略掉。<?phperror_reporting(-1);var_dump($afdsdafs); //输出 Noti...
2019-09-01 23:57:48
243
原创 PHP基础复习(二)——常量及数据类型
前言本系列文章主要是根据实战视频《360大牛:全面解读PHP面试》学习过程中记录的学习笔记,期间也会加入查找资料和平时学习中学习到的知识。数据类型PHP中数据类型主要分为三大数据类型(标量、复合、特殊):标量:浮点、整型、字符串、布尔复合:数组、对象特殊:null、resource浮点类型浮点类型不能运用到比较运算中。<?php $a = 0.1...
2019-08-25 23:38:07
288
原创 PHP基础复习(一)——引用变量
前言本系列文章主要是根据实战视频《360大牛:全面解读PHP面试》学习过程中记录的学习笔记,期间也会加入查找资料和平时学习中学习到的知识。希望可以鞭策自己不断夯实基础,平时也要查漏补缺。引用变量概念在PHP中引用意味着用不同的名字访问同一个变量内容。定义方式使用&符号,也就是在变量或者函数、对象等前面加上&符号。工作原理<?php ...
2019-08-18 23:22:07
258
原创 PHP使用json_encode()时数组里的中文字符串不转义
前言在项目开发过程中,经常遇到入库之前要对数组数据进行 json_encode() 操作,然后使用数据库工具查看相关数据时,发现对应的json数据中本来是中文字符串的数据变为了 Unicode 字符串,给查看数据带来了不便。那么如果我希望对数据使用了json_encode()处理以后,里面的中文字符串不变化可以如何做呢?在 PHP5.4 版本以后,官方更新了 json_encode() 的...
2019-08-09 09:40:23
4546
1
原创 使用IDEA搭建JavaWeb项目骨架
前言记得17年初的时候,尝试学习开发 JavaWeb 项目,刚开始搭建时候,真的是一头雾水,使用哪个 IDE 比较好呢,目录结构如何才是合理的呢,Tomcat 服务器如何找到项目的根目录呢,blabla~~到处查资料,半信半疑的尝试,到最后成功把项目跑起来以后,成就感真的是满满的>_<~~现在把之前的笔记整理一下吧。一、新建项目我选择的是 IntelliJIDEA 作为开...
2019-08-03 16:32:57
4956
2
原创 php下安装与使用protobuf
前言上一周由于一个需求,需要使用protobuf协议进行交互,但是网上关于php使用protobuf协议与服务端交互的资料十分少,以及难找,因此记录一下。ProtoBuf (Google Protocol Buffer)是由google公司设计的、用于数据交换的序列结构化数据格式,具有跨平台、跨语言、可扩展等特性,类似于常用的XML及JSON,但它具有更小的传输体积、更高的编码、解码能力,...
2019-07-27 11:29:30
3087
原创 centos下安装vsftpd
简介vsftpd是“very secure FTP daemon”的缩写,是一个完全免费的、开发源代码的ftp服务器软件。vsftpd,它是一款在Linux发行版中最受推崇的FTP服务器程序,小巧轻快,安全易用,支持虚拟用户、支持带宽限制等功能。一、环境准备centos7 64位二、软件下载与安装1)执行以下命令进行安装:yum -y install...
2019-07-21 22:49:26
833
原创 centos下安装Tomcat
一、环境准备centos7 64位JDK8二、软件下载与安装注意:安装Tomcat之前需要先安装好JDK,centos系统下安装JDK可以参考另一篇博客(centos下搭建Java开发环境)。①我们可以直接通过在centos命令行窗口中使用 wget 工具进行下载:wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat...
2019-07-14 23:10:29
838
3
原创 windows下安装Tomcat
一、环境准备windows7 64位JDK8二、软件下载与安装1)首先我们可以去官网下载Tomcat软件,下载地址:https://tomcat.apache.org/download-80.cgi我们这次选择下载的Tomcat8对应的zip文件:2)把下载下来的zip文件解压缩后,移动到自己习惯的文件夹路径,比如我放在了 D:\Program Files下。注...
2019-07-14 21:19:13
339
原创 centos下搭建Java开发环境
前言一般来说,大部分小伙伴都是在windows上进行软件开发,然后部署应用时发布到Linux环境下,这时候就需要在Linux上安装Java运行环境了。当然直接安装配置好JDK,我们也可以在Linux上直接开发。一、环境准备centos7virtualbox(这个根据个人需要,有云主机的直接在云主机上安装即可,我是在virtualbox上安装了centos操作系统来搭建的)二、系...
2019-07-14 20:18:59
1055
原创 windows下搭建Java开发环境
一、环境准备windows7JDK8二、下载并安装JDK到Java官网( https://www.oracle.com/technetwork/java/javase/downloads/index.html)下载JDK,选择自己需要的版本下载即可。本人电脑安装的是64位win7操作系统,下载的是JDK8 Windows x64版本( https://www.oracle.com...
2019-07-13 10:15:58
524
原创 Java基础(一)Java简介
前言曾经因为觉得Java开发web项目,需要配置各种各样繁琐的xml文件,而选择畏难,断断续续学习了Java的语法基础后就没有深入学习了,导致了没有办法早点领略Java开发Web项目的魅力。现在看到Spring Boot对Java开发Web项目的各种自动化配置,这次可不能错过了,要好好地巩固一下基础。本系列文章主要基于慕课网推出的Java攻城狮系列视频做的笔记。在学习的过程中,好记性不如烂...
2019-07-08 00:05:43
486
wampserver2.5-Apache-2.4.9-Mysql-5.6.17-php5.5.12-32b
2016-01-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人