学习资料
My和风大福
这个作者很懒,什么都没留下…
展开
-
关于equals的使用
如果正常使用,这是一个容易报空指针异常的方法,建议通过StringUtils.equals(str1,str2)进行使用;"常量".equals(str1);if(StringUtils.isNotBlank(str1)){ str1.equals(str2);}原创 2021-07-26 15:11:24 · 208 阅读 · 0 评论 -
v-if与v-show的区别
v-if为false时不会加载代码,v-show会原创 2021-07-19 17:39:34 · 133 阅读 · 0 评论 -
数组是特殊的对象
比如一个String数组:String[] strgs = {"a","b","c"};//后端let strgs = ["a","b","c"];//前端那么它可以理解成这样一个特殊实体类(对象):class Strs { private String 0 = "a"; private String 1 = "a"; private String 2 = "a";}//当然,这么编写的代码肯定是报错的,不过可以这样理解在前端es6中的解构赋值中便充分说明原创 2021-04-29 14:49:41 · 221 阅读 · 0 评论 -
一些需要注意的小细节
使用ThreadLocalRandom代替Random;持续跟新中ing...原创 2019-12-26 18:00:55 · 128 阅读 · 0 评论 -
try-finally与try-with-resources
首先来看看常用的try-finally:public static void main(String[] args) throws Exception{ InputStream inputStream = new FileInputStream(new File("E:/test.txt")); try{ inputStream.read(); }cat...原创 2019-12-23 17:16:35 · 226 阅读 · 0 评论 -
Java四大名著--effective java
osc动弹上的弹友推荐的,还是很不错的,有时间打算看看其它的几大“名著”。最近看了看Java程序设计语言,一览而过,是一本很适合初学者的书,嗯。。。拿来复习也是很不错的。然后就是深入理解Java虚拟机一书,还没看完,看到第二章,讲的很详细,不过内容比较复杂,需要一些基础。电子版目录(git)以及pdf下载汇总博文:https://blog.csdn.net/wizardforcel/a...原创 2019-12-20 15:53:41 · 1471 阅读 · 0 评论 -
Hadoop运行MapReduce命令卡住的问题
我的原因是fair-scheduler.xml文件没有配置,配置好后便可正常使用。配置如下:yarn-site.xml:<property> <name>yarn.resourcemanager.scheduler.class</name> <value>org.apache.hadoop.yarn.server.res...原创 2019-12-18 14:38:17 · 873 阅读 · 1 评论 -
关于全链路监控
一、什么是全链路监控?简单的说就是对一次请求开始到最后响应的全程监控,该过程可能经过多个服务。二、使用到的工具目前了解的工具——普罗米修斯(Prometheus)+grafana(用于普罗米修斯的数据显示);该工具主要可用于系统环境、各种集群或单节点服务、具体的项目等多方面的监控。三、具体的项目监控由于监控系统要做到与被监控项目耦合度尽可能低,所有可以考虑采用AOP来进行埋点(...原创 2019-12-16 11:41:59 · 1856 阅读 · 0 评论 -
关于代码审查
代码审查的关注点:代码的可读性、代码的简化、代码的可维护性等(https://blog.csdn.net/C343500263/article/details/78930074);代码的可读性:通过代码可以明确知道要表达的意思,主要问题:魔法数字、过多的嵌套(不超过3层)等;代码的简化:代码的复用;代码的可维护性:代码常量以及其他资源或代码的集中使用与管理;代码审查的过程:审查者通...原创 2019-11-06 17:01:27 · 236 阅读 · 0 评论 -
记一次vm安装异常
首先用的是一台已经安装过vm14的win10,然后我只有vm12的,vm14因为没请干净,所以装vm12的时候就会出现各种问题。解决方式也比较简单,因为是以-前的vm14没清干净的缘由,只需要win+r输入services.msc查看vm的服务,然后管理员运行cmd后用sc delete vm服务 关闭所有vm服务后再以管理员方式运行vm12进行安装即可。注:如果还是不行就下最新版的vm,...原创 2019-11-04 11:00:00 · 135 阅读 · 0 评论 -
OSI七层模型及其相关信息的自我总结概况
应用层(数据-数据单元-消息(message)或数据(传输是进行分组形成报文)--位于应用层的信息分组称为报文(可封装成数据包、帧来传输))--网关属于应用层网络服务与最终用户的一个接口。协议有:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP--------表示层数据的表示、安全、压缩。(在五层模型里面已经合并到了应用层)格式有,J...原创 2019-08-17 14:18:58 · 198 阅读 · 0 评论 -
发现sort排序一个有意思的地方
记得以前在网上一些人说sort只能对集合进行排序,不能对数组进行排序,说是sort里用的是方法比较排序而不是比较符比较排序,而基本数据类型是不能调用方法的。对此我特意看了下源码,不知道是不是jdk版本的问题,1.8里不管是集合的sort还是数组的sort本质上都可以用比较符对基本数据类型进行比较排序(1.7,1.8开始改的还是挺多的,比如1.8接口里还能有静态含有方法体的普通方法)这是Co...原创 2019-08-12 15:07:15 · 161 阅读 · 0 评论 -
关于Redis的MQ
mq主要用到的是点对点与发布订阅(主题)式的消息队列,而Redis则是自带发布订阅的功能,通过list列表来实现点对点的功能。在性能上,生产较小的数据时(10k以内)Redis的性能是比较快的,而消费数据的性能一直比较快;但与其它mq不同(像kafka,它的默认语义便是最少会被消费者消费一次,因此导致kafka会出现消息重复的现象),Redis不能保证每次传输到队列的消息会被消费者消费到,即便...原创 2019-08-24 11:18:12 · 514 阅读 · 0 评论 -
put与post的区别以及restful
这两个方法咋一看都可以更新资源,但是有本质区别的具体定义可以百度,我这里就不贴了,光说我自己的理解首先解释幂等,幂等是数学的一个用语,对于单个输入或者无输入的运算方法,如果每次都是同样的结果,则称其是幂等的对于两个参数,如果传入值相等,结果也等于每个传入值,则称其为幂等的,如min(a,b)POST用于提交请求,可以更新或者创建资源,是非幂等的举个例子,在我们的支付系统中,...转载 2019-07-24 19:51:35 · 310 阅读 · 0 评论 -
MySQL启动失败原因
网上大部分说法:没有data,运行命令mysqld --initialize-insecure --user=mysql后重新安装启动即可;但有时候按以上方法做了之后依旧行不通,这时候应该就是my.ini文件的问题了,正常配置如下:[mysqld]# 设置mysql客户端默认字符集default-character-set=utf8[mysqld]#设置3306端口port = ...原创 2019-07-05 19:44:20 · 957 阅读 · 0 评论 -
Sql语句大全
1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'--- 开...转载 2019-03-08 11:05:27 · 368 阅读 · 0 评论 -
缓存雪崩、穿透、预热、更新、降级的概括
一、缓存雪崩由于原有的缓存失效,新缓存未到期间(如设置缓存时间采用了相同的过期时间),导致请求直接访问数据库,而对数据库造成过大的压力导致数据库宕机,从而产生一系列连锁反应造成整个系统崩溃;二、缓存穿透缓存与数据库都没有,导致在缓存和数据库都查不到数据而返回空(两次无用的查询)--缓存命中率三、缓存预热在系统上线前将数据库数据提前加载到缓存里四、缓存更新清除过期缓存,更新缓存五...原创 2019-03-16 09:40:54 · 229 阅读 · 1 评论 -
jpa实体类一对多set与list使用
当从一的一端取出其所对应的多的一端时,如果用的是set那么取出多的一端的值时顺序是无序的,如果用的是list那么取出多的一端的值时顺序是有序的(其实就是list与set的特性罢了,然鹅。。。。。。)问题:因为set查询出的数据是无序的,如果当一的一端对应5条数据,而分页的单页只显示3条数据,当到下一页时,其中的两条数据可能与与上一页的3条数据出现随机相同的情况,因此会导致数据显示的缺失和无序。...原创 2019-03-04 17:52:30 · 4179 阅读 · 3 评论 -
算日期差的小东西
新版jdk自带。。。。LocalDate startTime = LocalDate.of(1990, 1, 1);LocalDate endTime = LocalDate.of(2018, 6, 6);LocalDate nowTime = LocalDate.now();System.out.println("与现在时间的相差天数:"+(nowTime.toEpochDay() - star...原创 2018-06-06 15:44:05 · 322 阅读 · 0 评论 -
TCP
当我们提到“栈”这个词时,我们说的是带有后入先出这种行为的一种容器。也就是说,它的内容并不是一个东西,而是多个层次化的东西层叠在一起,就像一摞盘子一样。协议栈,指的是符合某种分层模型约束的多个协议的层叠结构,比如TCP/IP,这是一个典型的协议栈。但是注意,TCP/IP协议栈包含的是一族协议,其中有HTTP,DNS,TCP,UDP,ICMP,IP,ARP,RIP,OSPF等等,而不是某一个协议。由...转载 2018-07-09 16:40:35 · 134 阅读 · 0 评论 -
关于Mybatis缓存命中率的一己之见
影响缓存命中率的因素有很多,比如缓存太小,缓存的时间太短等都会影响缓存的命中率;但从本质上讲,影响缓存命中率的因素还是取决于缓存的粒度,缓存的粒度越小缓存的命中率也就越高,目前缓存粒度最小的是对象缓存(缓存粒度:在一些软件上,缓存粒度是可以自己设置的,而缓存粒度越小读取缓存的速度也就越快,当然这要视情况而论;比如说一个缓存粒度为512kb的文件,而你只是需要读取一个4kb的缓存内容,那么由于缓存粒...原创 2018-07-09 17:25:37 · 2592 阅读 · 2 评论 -
Ajax分页
Ajax分页 Js代码: function add(){ var pageNumbers=$("#pageNumber").val(); var pageSizes=$("#pageSize").val(); var page=Number(pageNumbers)+Number(pageSizes); var pag...原创 2018-07-30 19:31:50 · 521 阅读 · 0 评论 -
将POST请求转换为DELETE或PUT请求
ajax转换:$.ajax({ type:"POST", url:"<%=request.getContextPath()%>/departDel", data : { _method:"DELETE", "id":departId }, dataType:...原创 2019-02-28 10:50:13 · 2748 阅读 · 0 评论 -
创建&清空sessionORcookie的方法&其生命周期
创建session:HttpSession session=request.getSession();session.setAttribute("value", "value");session.getAttribute("value");----------------------------------------------------------------------------...原创 2019-02-28 21:49:15 · 185 阅读 · 0 评论 -
六大数字类型的范围是一个首尾相连的圆
例:byte b1=99; byte b2=99; byte b3=(byte)(b1+b2) =99+99 =127+1+70 =-128+70 =-58...原创 2019-02-25 10:01:53 · 349 阅读 · 0 评论 -
查询缓存将缓存数据存储于硬盘中
查询缓存建立在二级缓存的基础上,所以同二级缓存一样将缓存数据存储于硬盘中原创 2019-02-25 15:01:30 · 258 阅读 · 0 评论 -
新建mysql数据库属性设置
字符集:utf8 -- UTF-8 Unicode排序规则:utf8_croatian_ci原创 2019-03-04 21:44:21 · 1918 阅读 · 1 评论 -
hibernate5.0以上创建session
// 创建服务注册对象final ServiceRegistry registry = new StandardServiceRegistryBuilder().configure().build();// 创建会话工厂SessionFactory sessionFactory = new MetadataSources(registry).buildMetadata().buildSess...原创 2019-03-04 22:17:28 · 211 阅读 · 0 评论 -
关于tap与space
虽然没敲多久的键盘,代码也写的不多,但还是发现了一个问题:用tap的时候会出现代码对不齐的现象,只能用空格来对齐;同时在编写yml配置文件时报了个有关于tab的错误,删除tab后用4个空格代替便解决了错误,这可能与开发工具的设置有关,所以用空格可能没有tab来的便捷,但是兼容性可能更高,可以尽量避免这些没必要的小错误。...原创 2019-03-05 09:51:38 · 409 阅读 · 0 评论 -
jsp页面ajax调用后台,后台无错进入错误函数的问题
今天是第三次被这个问题给消磨时间了,前两次一直觉得没啥,感觉不会再出现这样的问题了:一、@ResponseBody忘加了;二、使用了延迟加载导致一个包含实体类对象的实体类由于未加载出内部的实体类对象而无法获取id外的值,从而无法转换为json格式三、多对多或其他实体类关系导致无限循环掉用,@JsonIgnoreProperties("school")@JsonIgnore(生...原创 2019-02-26 17:33:41 · 719 阅读 · 0 评论 -
解决js缓存严重的问题
一:重新编译项目;二:清除浏览器缓存(选项里清除Cookie 和网站数据)。原创 2019-02-26 19:14:54 · 1527 阅读 · 0 评论 -
ajax错误函数中可能用得到的一些东西
jQuery.ajax({ type: "POST", async: true, dataType: "json", url: this.iurl + '/getCouponNums.action', data: {venderIds: venderIds, random: Math.random()},...转载 2019-02-26 21:02:26 · 216 阅读 · 0 评论 -
POJO类与BO类
POJO类:简单的实体类;BO类:当一个POJO类不满足需求而需要额外添加属性时创建的带有该POJO类以及需求属性的实体类(使用时,需在方法中同时使用BO类与POJO类去接住jsp页面传来的值,然后再将POJO类赋值给BO类中的实体属性)实例:POJO类:BO类:Controller层:jsp的ajax传值:...原创 2019-02-27 11:24:01 · 2001 阅读 · 0 评论 -
冒泡排序与快速排序比较记录
经测试,冒泡排序十万条数据大概会进行有效比较7亿次,耗时1万1毫秒左右;而快速排序十万条数据大概会进行有效比较80万次,耗时20毫秒左右。快速排序参考资料地址(该文章对于快速排序的讲解倾向于朦胧,具体的实现原理需要自己运行并计算):https://blog.csdn.net/qq_26122557/article/details/79458649冒泡排序及其优化参考资料地址(然鹅当数据量较...原创 2019-03-06 15:13:56 · 320 阅读 · 0 评论 -
java中的运算符(&、|、^、3位移、~)
^(异或运算符):将两个数字转换为二进制,对相同位置的数进行比较,如果相同则为0如果不同则为1;示列:5^25的运算结果为28运算过程:5的二进制:00101 25的二进制:11001 结果的二进制:11100==>转换为10进制就是(2的4次方+2的3次方+2的2次方+0+0)=16+8+4=28;-------------------------------...原创 2019-03-09 16:55:39 · 1421 阅读 · 0 评论 -
正则表达式
正则表达式(字符串匹配)“*”是我们非常了解的用来匹配字符串的东西,它只是模糊的进行匹配,属于正则表达式的一部分,而正则表达式可以说匹配的方式更为的多样罢了。在api上的java.util.regex 则详细的介绍了,这里复制粘贴过来它的构造摘要,具体方法可查询api或百度,需要注意的是JAVA中的"\"用"\\"表示:x 字符 x \\ 反斜线字符 \0n 带有...原创 2018-06-05 20:35:28 · 223 阅读 · 0 评论