- 博客(23)
- 收藏
- 关注
原创 IDEA双击打不开,Error opening zip file or JAR manifest missing ,Error occurred during initialization问题分析
将配置改到之前的数值,我在C盘里确实也找到了IDEA的文件夹,但是没有这个文件,情急之下我把IDEA卸载了然后重新安装了2021版本的IDEA,但是,没有用,我的排查方式是,在。)在我修改完后,发现双击我的IDEA打不开了,这把我吓坏了,别人给出的方案是去C盘下找到。再次尝试打开,仍然报错,这次报错信息为我的C盘在日志里是乱码格式,于是我修改了。有次我感觉我的IDEA有些许卡顿,于是我修改了我的IDEA内存配置(经过排查发现是没有找到破解文件,于是我把破解文件放到了C盘下,且在。文件,IDEA启动成功。
2023-08-24 11:00:00 4655 1
原创 IDEA修改内存配置大小
最近感觉IDEA内存有点卡,于是修改了IDEA的内存配置,将红框中的文件里的都调大一些,但是并没有什么用,在IDEA里面打开比如你在配置文件里修改的值为2048,但是你会发现当前值还是1516,IDEA并没有执行你的配置。原因在于在C盘里还有一个地方也可以对IDEA进行配置,路径就在上面的图片里,它也指向了,你可以去这里面修改内存配置试试(实在找不到的话就直接在C盘全局扫描查找vmoptions,等个几分钟就行)。
2023-08-24 10:35:21 966
原创 Java开发中使用链式判空解决冗余代码
是一个用于判断Stream中是否存在符合给定条件的元素的终端操作,他接收一个谓词作为参数,并返回一个布尔值表示是否存在任意一个元素满足该条件。中的逻辑,但是如果按照图中的写法在代码检查中会被提示。这段代码的目的是如果有一个字段等于空字符串,就执行。在上面这段代码中,使用stream流中的。,只要有一个字段为空字符串,就执行。在上面代码中,谓词为。
2023-07-07 15:11:05 356 1
原创 使用枚举类替换常量
平时开发中我们经常直接使用private final String DATA = “total”;表示常量,这种方式要么直接写在我们需要使用的类中,作为成员变量,要么单独写一个类作为常量类,里面是项目中使用的各种各样的常量。
2023-07-07 14:21:47 250 1
原创 微信、QQ可以聊天,但是网页打不开,解决方法之一
开始 - 控制面板 - 网络和共享中心 - Internet选项 - 高级 - 重置 - 确定。系统版本:WIN10。
2023-02-02 17:31:23 1217
原创 Java项目开发中的DO、BO、DTO、VO、PO的区别
如果现在有一个复杂的业务,需要根据订单信息和购物车中的信息计算出某个用户的表现力评分,那么就需要在定义一个。我们如果想要接收前端传来的请求体中的各种数据,可以定义一个。然后在定义三个DO对象,对应这三张表(用PO也可以),最后我们如果想要给前端的某个页面传输数据,可以使用。每个DO对象的字段和数据表中的字段关联。根据自己的需求,自行判断。
2022-12-17 15:54:52 2282 2
原创 MySQL中FIND_IN_SET()和GROUP_CONCAT()在开发中的应用
前端传入'A,B,E'形式的编码,后端在返回的时候需要查询出'A,B,E'编码的名称并返回给前端,且以字符串的形式返回。此时就用到了MySQL中FIND_IN_SET()和GROUP_CONCAT()这两个函数。
2022-12-02 09:59:21 325
原创 Vue中 watch原理以及使用
的意思是深入观察,监听器会一层层的往下遍历,给对象中的所有字段都加上这个监视器,但是这样性能开销就非常大了,修改。中的所有字段,如果想监听某一字段,我们可以是使用字符串形式监听。表单变化的一个监听,只有当courseForm的引用被改变时,才会触发。就跟我们以前的效果一样,不会在绑定的时候就执行。中的,所有数据双向绑定是生效的,但是默认情况下。,是一个对象,里面有很多字段,当我代码如下时。中的任何一个字段发生改变的时候,我希望。中的某个字段改变的时候,我就可以通过。中的指定字段发生改变的时候,我希望。
2022-10-23 12:55:09 459
原创 Spring三种DI形式详解以及为什么Spring和IDEA都不推荐使用@Autowired注解?
就直接放的代码了,前面看明白了这里看一个就够了System . out . println("我是userServiceImpl" + userDao);} }下面就是为什么Spring和IDEA都不推荐使用@Autowired注解的原因了平常我们在代码中注入一个字段的时候,会用到@Autowired注解,但是这个注解有个问题,
2022-10-07 15:54:35 444
原创 MySQL中limit和count的优化
使用了覆盖索引,因为只查的id,id就在覆盖索引上,所以查的速度很快,然后使用子查询,这时候就直接找id固定住的10条数据,速度很快。,此时需要MySQL排序前2000010记录,仅仅返回2000000 - 2000010的记录,其他记录丢弃,查询排序的代价非常大。优化思路:一般分页查询时,通过创建覆盖索引能够比较好的提升性能,可以通过覆盖索引加子查询形式进行优化。通过测试可以发现,越往后,分页查询效率越低,这就是分页查询问题所在。分页查询,在查询的时候,越往后,分页查询效率越低。
2022-10-06 19:03:35 1349
原创 MySQL中group by的优化
OK,加了索引之后果然管用,用不着使用临时表了,不过这里要注意的是,我创建的是profession在前的一个多字段联合索引,只建profession的索引执行上面的SQL语句效果一样,我建这个联合索引主要是为了下面的测试。原因是因为对于分组操作,在联合索引中,也是符合最左前缀法则的。的联合索引吗,我如果执行下面的SQL语句,会使用到临时表吗。中显示使用了临时表,这性能可就低了啊,怎么破,尝试针对。可以发现,如果仅仅根据age分组,就会出现。表中的我们后建的索引删掉,然后查看当前。此时只有一个主键索引。
2022-10-06 17:23:50 2868
原创 MySQL中order by的优化方案
不在这颗索引树上,但是我们有想要查询name的id啊,MySQL就会根据这个id,也就是1,从主键索引上根据这个id为1进行查询,唉,这时候就不单单使用我们创建的age和phone的索引了,还用到了id的主键索引,又会用到了。,这个代表反向扫描索引,因为我们在MySQL中创建age和phone的索引的时候,默认索引的叶子节点都是从小到大进行排序的,而此时我们查询排序时,是从大到小的,所以,在扫描时,就是反向扫描,就会出现。又出现一个问题,我如果根据age和phone进行排序,一个升序,一个降序的话,会。
2022-10-06 15:25:21 2015
原创 MySQL中插入数据时的简单优化
MySQL中插入语句的几种简单优化,详细解释了为什么主键顺序插入的效率会比乱序高的原因,并演示了1000W数据如何使用MySQL的指令进行插入
2022-10-05 19:21:00 1616
原创 希尔排序、快速排序、归并排序的实现分析以及时间复杂度
我在另一篇文章中说插入排序的时候,会有一个不太好的现象,如果已排序的分组元素为{2,5,7,9,10},未排序的分组 元素为{1,8},那么下一个待插入元素为1,我们需要拿着1从后往前,依次和10,9,7,5,2进行交换位置,才能完成真 正的插入,每次交换只能和相邻的元素交换位置。希尔排序是按照不同步长对元素进行插入排序 ,虽然一次插入排序是稳定的,不会改变相同元素的相对顺序,但在不同的插入排序过程中,相同的元素可能在各自的插入排序中移动,最后其稳定性就会被打乱,所以希尔排序是不稳定的。
2022-10-05 16:17:41 2021
原创 静态代理和动态代理
动态代理指代理类不写在代码中,而是在运行过程中产生,java提供了两种动态代理,分别是jdk的动态代理和基于Cglib的动态代理。
2022-10-04 16:54:54 3825 1
原创 二进制-原码反码补码
总结一下,不是因为有了反码,补码的定义,才出现了负数的表示,而是因为我们要统一加法、减法运算,为了能【凑出】最终的数字表示,才诞生了反码和补码,帮我们方便进行二进制推导。首先,要明白一个前提,为了简化硬件电路设计,CPU 只有加法器,没有减法器,这就要求,我们必须用另外的手段表示负数,方便加法运算。应该对应 128,但我们说最高位是符号位对吧,我们不妨可以把符号位理解为:它的值就代表 128 ,只是个负的而已。回过头来,再看 -3 的补码怎么来的,记得我们的目的是要凑 -128 + 125。
2022-10-04 16:50:40 502
原创 try...catch...finally中的值传递和引用传递的问题
已经将student这个地址的内存中的数据进行了修改,不管你是不是执行完finally后在返回这一套了。传的student是引用传递,传递的是student在内存中的地址,但是因为有。方法返回的还是student在内存中的地址,但是。不管在什么情况下都要被先执行,哪怕你。输出20的原因:因为这里。
2022-10-04 16:46:31 305
原创 静态代码块、代码块、构造函数执行顺序问题
在堆中创建对象,也就是说这时候堆中有两个B对象,只不过第一个B对象已经没有了强引用,当GC的时候,会被当做垃圾回收掉,而第二个B还在被b引用着,所以不会被垃圾回收掉。当new第二个B对象的时候,需要注意的一点是静态代码块在类加载的时候只执行一次,也就是后续new的B对象不会再去执行静态代码块中的内容了,所以输出的是。,然后因为有父类,所以就先初始化(这里的初始化和上面的初始化方法不是一回事啊,别弄混)父类,先把父类初始化完了后再去初始化子类,这时候输出。,别看还是用的b,但是毫不影响后面。
2022-10-04 16:40:34 115
原创 Java中的`try{}...catch{}...finally{}`哪个可以省略呢?省略后出现的问题有什么?
结论:当出现异常之后,异常之后的代码没有执行。中的内容之后,在终止程序,后面的代码不会执行。将异常包起来的时候,如果。将异常包起来到的情况。中出现异常,将执行完。
2022-10-04 16:21:45 580
原创 Java中的异常分类(检查型异常和非检查型异常)
为什么检查型异常必须要抛出异常 因为不可控,比如检查型异常中的`IOException`,比如我们要`new FileOutputStream("D:\test\StudentInfo.txt");`,java不知道你盘符里面到底有没有这个路径下的文件,万一没有的话怎么办,所有就需要我们try...catch一下,万一没找到的话,就报错,让调用者去处理这个没找到的错误。
2022-10-03 14:43:52 401
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人