
踩坑集
文章平均质量分 51
yuhuofei2021
记录即分享
展开
-
Lock wait timeout exceeded; try restarting transaction
锁等待超时问题原创 2023-04-08 20:51:48 · 568 阅读 · 0 评论 -
头疼,利用 Arrays.asList() 方法生成的 ArrayList 列表不能添加或者删除元素,还给我抛异常 java.lang.UnsupportedOperationException
在日常开发中,相信大家或多或少都有用到过一个类 Arrays ,这个类具备的功能还是比较实用的,比如用它做数组的排序,直接 Arrays.sort(数组名) 就搞定,又比如用它将一个数组转换成一个 ArrayList 列表,使用 Arrays.asList(数组名) 就能完成,用起来,哎,挺香的!美好的事物大家都喜欢,但意外总是存在的,指不定哪天就到来破坏了这份美好,这不,最近我在用 Arrays.asList() 这个方法处理数组时就翻了车,就差找个墙角裂缝钻进去,躲起来了。。原创 2023-03-26 18:53:19 · 1529 阅读 · 1 评论 -
一个SQL审核不通过引发的思考
昨天下午,我让团队的一个小伙伴整理好他要发布到生产环境的SQL脚本,之后我提交SQL审核,结果一直报有一行错误,但却不提示具体是哪一行,反正结论是审核不通过,有点不爽。通过上面的简单介绍,可以知道,tinyint占用的内存要比bit大,那为什么对于布尔值的处理,还是选择了tinyint(1)作为规范而不是bit(1)?用bit(1)不也可以吗?上面提到的两种使用方式没有对错之分,都可行,就看你所在公司对于这个点的规范是什么样了,我们按人家的规范走就好了,没必要死磕。...原创 2022-07-22 01:36:33 · 473 阅读 · 0 评论 -
又被 windows 10 坑了一个晚上
本来晚上想干点什么,突然发现键盘打不出来字。一开始以为是键盘的问题,然后打算把电脑和键盘的蓝牙连接断开,然后重连,蹦出来个“删除连接失败”,也没多想,继续倒腾键盘。索性把键盘的电池给拔了,重新装上,再试试。然而依旧没反应,这时我才意识到,或许是电脑蓝牙的问题,因为连删除连接设备都蹦了个错误出来!进行常规操作,重启一下电脑!豁哦,不重启还好,一重启,电脑桌面右下角的蓝牙图标都不见了!设置——蓝牙与其他设备——蓝牙这个选项的开关也没了!设备管理器下的蓝牙图标也没了!给我看傻了,什么情况!可能是重启初始化失败?于原创 2022-06-16 00:23:32 · 185 阅读 · 0 评论 -
tomcat打印日志乱码问题
对于 tomcat 打印中文乱码问题,处理方式如下:原创 2022-05-31 20:20:18 · 5755 阅读 · 0 评论 -
This beta version of Typora is expired, please download and install a newer version
早就听闻Typora要收费,不过之前一直装着0.11.18版本,能正常使用,也没太当回事直到今天点开Typora,出现下面的弹窗提示,才······嗯~~~~~~~~一时间也没找到什么好的解决办法,而且最重要的是,Typora的官方网站,竟然打不开!原因嘛,懂的都懂,不懂的,以后会慢慢懂。一直耗着也不是个事,出了问题,总得处理处理,毕竟用习惯了。于是乎,登录我的某个网盘,悄咪咪地用老人家爬山的速度,把0.11.5版本的Typora下载下来,卸载之前的,重新安装低版本客户端到电脑上,结果如下:竟原创 2022-04-07 23:05:26 · 5570 阅读 · 11 评论 -
springboot中将@Value注解的变量赋值给静态变量
问题来源在springboot中,使用@Value注解,可以从配置文件中获取配置好的变量值。需要注意的是,这种方式能将获取到的值直接赋值非静态变量,即下面这样做是合理的,可以拿到变量值。@Value("${login.name}")private String loginName;但却无法赋值给静态变量,即下面这样做是不合理的,得到的值是null@Value("${login.name}")private static String loginName;解决方式如果要将配置文件中的值,原创 2022-04-01 00:21:06 · 1452 阅读 · 0 评论 -
使用Maven报错:You use Maven 3.6.0, there could be issues importing multimodule project. It is recommende
问题来源今天搭建一个springboot的简单例子,用的maven是3.6.0版本的,结果一个依赖都没能引入进来,看着一条一条红线,真是,嗯······看了看控制台,果然报错了呀You use Maven 3.6.0, there could be issues importing multimodule project. It is recommended to upgra解决方式分析了一下报错信息,索性下载一个高一点版本的maven,重新试试。这次下载的maven版本是3.6.3的,下载地原创 2022-03-21 12:06:27 · 4307 阅读 · 0 评论 -
防止电脑自动锁屏(Windows系统)
有时候,我们在使用公司的电脑进行办公时,需要电脑屏幕保持常亮,不锁屏。(比如拿笔和纸张对着电脑抄个笔记什么的…)但通常情况下,公司的办公电脑,都设置了自动锁屏,而且管理员还禁止电脑当前用户更改自动锁屏的设置。因此,我们是没法正常去改变什么的,很多人就犯了难,头疼。今天两个简单小步骤,带你搞定这个问题。新建一个txt文件,比如防锁屏.txt,然后将下面的内容复制进去,并保存Set vbObj = WScript.CreateObject("WScript.Shell")WScript.Slee原创 2022-03-14 16:24:53 · 11843 阅读 · 4 评论 -
Java删除目录及其包含文件
同时删除目录及该目录下所包含的文件(空目录也可删,同样适用),源码如下:import java.io.File;public class deleteFile { public static void main(String[] args) { //要删除的路径 String path = "e:/003_Demo/IO/new"; //创建文件对象 File filePath = new File(path);原创 2021-10-27 01:15:59 · 880 阅读 · 0 评论 -
javax.xml.bind.annotation在jdk11中已被移除
问题来源做一个xml文件的映射,用的是jdk11的版本。给类加上注解:@XmlRootElement(name = "d")导入相应的类名:import javax.xml.bind.annotation.XmlRootElement;直接报错:javax.xml.bind cannot resolve......问题解决方式 1将jdk的版本退回到jdk8,因为jdk8还支持自带javax.xml.bind.annotation包。方式 2手动引入相关的jar包。如果用的项目构建工原创 2021-09-20 23:49:08 · 6668 阅读 · 0 评论 -
Redis中文乱码问题的解决
今天测试一个小功能,用redis做了个缓存,然后启动redis客户端进行查询,发现得不到想要的中文结果。网上查找相关的解决方案,却没有一个能完整解决问题的,最后自己一步一个脚印解决了。1. 问题的产生(1)将接口返回数据写入redis,设置key为“data”(2)找到redis安装目录中的redis-server.exe,双击启动(3)在redis-server.exe这个文件的这一层地址栏,输入cmd,打开控制台,然后输入redis-cli并回车,接着PING一下连通性,可以看到客户端是没有原创 2021-09-20 14:52:03 · 20154 阅读 · 6 评论 -
子类继承父类的初始化顺序
子类继承父类的初始化顺序:父类静态内容(静态变量、静态代码块)子类静态内容(静态变量、静态代码块)父类非静态内容(普通变量、普通代码块)父类构造方法子类非静态内容(普通变量、普通代码块)子类构造方法其中,同为静态内容的静态变量和静态代码块的执行顺序,与具体代码的先后顺序相关。非静态内容的普通变量和普通代码块类似。新建一个父类public class Father { private String name = "执行父类普通变量"; private static Strin原创 2021-08-26 16:52:06 · 493 阅读 · 0 评论 -
public | protected | default | private四个访问修饰符的访问范围比较
java面向对象的四个特性之一——封装,主要用到以下四个访问修饰符:publicprotecteddefaultprivate访问修饰符一般用于修饰属性、方法、类,被修饰者的可访问权限,将由修饰符决定。四个访问修饰符的权限范围大小访问修饰符父类本身同包子类其它包public√√√√protected√√√default√√private√default(默认):表示包访问权限,同一个包内的任何类都可以访问到该原创 2021-08-26 12:28:24 · 2012 阅读 · 0 评论 -
Scanner类中next()、nextLine()、hasNext()、hasNextLine()等方法的区别与联系
今天做题,踩到了Scanner类中的一个坑,有点小无语,故此小结一番。尽管遗忘的东西越来越多,但我并不想把所有东西都还给老师,嘿嘿,下面进入正题。Scanner类存在于Java中的java.util包,相信很多人对它都不陌生。在IDE中,每当我们需要从控制台通过键盘输入东西时,就要用到它了。这个类中,我们常用的几个方法有next()、nextLine()、hasNext()、hasNextLine()、nextInt()、hasNextInt() 等。为了好区分,我把这几个方法分成两个部分,第1部原创 2021-07-28 01:42:08 · 2321 阅读 · 10 评论 -
Java输出结果保留n位小数
说明:n为保留的小数位数,可以是1、2、3、4…1. 四舍五入保留n位小数import java.math.BigDecimal;import java.text.DecimalFormat;import java.text.NumberFormat;//对a的值四舍五入保留2位小数public class Test { public static void main(String[] args) { double a = 6.205566; //方法一:利用p原创 2021-08-21 23:59:45 · 734 阅读 · 0 评论 -
java.lang.NumberFormatException: For input string: “10 “
问题来源今天写一个很简单的题目,所有自测用例都通过,提交后却直接报错,部分代码如下:import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while(sc.hasNextLine()) { int n = Integer.parseInt(sc.n原创 2021-08-21 20:53:11 · 1978 阅读 · 0 评论 -
Java中i++和++i
i++很多时候,我们都将i++理解成先用后自增1,按照这样的理解,我们发现有时候能行得通,有时候却解释不了一些问题,所以这样的理解是存在问题的。i++这个表达式做了两件事:(1)实现i的自增1,即i = i+1(2)整个表达式返回i未自增1前的旧值。因此,我们可以将i++拆解成以下三个步骤:int original_i = i; //(1)先保留i的旧值i = i + 1; //(2)做i的自增return original_i; //(3)返回i++这个表达式的值,即i的旧值origi原创 2021-08-17 06:58:56 · 2615 阅读 · 0 评论 -
String类substring方法
踩了一个坑,记录一下String类的substring方法。substring方法可以用来截取字符串,它有两种表现形式:substring(int beginIndex)substring(int beginIndex, int endIndex)1、substring(int beginIndex)从输入参数所指定的位置开始(包含该开始位置的字符),截取到字符串最后一个位置。具体示例如下:public class Test { public static void main(Stri原创 2021-08-15 02:43:48 · 40409 阅读 · 5 评论