自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 IDEA Debug调试

IDEA Debug调试 debug方式启动(Shift + F9)正常运行右上的蜘蛛图标 断点:打在程序可执行的行(不能放在没有代码的空白行) 基本用法& 快捷键 f8 单步调试,一行一行运行 f9 跳过当前断点,直到遇到下一个断点或者运行结束 f7 进入方法内部(在方法的那一行高亮的情况下) 比如controller层调用service层方法的时候 controller =》 service 调试源码追踪方法调用 控制台查看变量 计算表达式: alt + f8 去除所有断点 在非断点所在.

2022-01-05 21:40:56 61

原创 注解小总结

@ResponseBody:放在函数上面时表示,这个函数返回类型为json类型;用于函数入参时表示,前端传参为json类型,此时需要设置Body传参类型为Josn类型 @RequestParam:只用于函数入参,此时前端用url方式传参,函数入参List类型,(url方式传参,参数是List类型,不加@RequestParam,则会报错) @RequsetMapping:表示各种请求都可以,(后跟请求路径) @GetMapping和@PostMapping:分别表示只能用于get请求和post请求 ...

2022-01-05 21:32:12 424

转载 Maven依赖 下载失败 解决方式

下载原因 网络比较慢,下载失败 依赖下载一半,终止下载 这个依赖包不能正常下载 本身就是离线的依赖包 辅助软件:everything,可根据名称检索电脑所有文件 下载:everything下载 步骤 先刷新maven,重新下载,是否可以正常下载 删除之前失败的重新下载,使用everything检索**.lastUpdated**未后缀的文件,全部删除 刷新maven,重新下载 如果依然下载失败,需手动下载jar包,安装到本地仓库 mvn install:install-file -D

2022-01-01 19:01:14 506

原创 冒泡排序的基本原理

冒泡排序的基本原理 对存放原始数组的数据,按照从前往后的方向进行多次扫描,每次扫描都称为一趟。当发现相邻两个数据的大小次序不符合时,即将这两个数据进行互换,如果从小大小排序,这时较小的数据就会逐个往前移动,好像气泡网上漂浮一样。 下面来看一组动态图 冒泡排序的特点: 升序排序当中每一轮比较会把最大的数沉到最底(这里以从小到大为例),所有相互比较的次数每一轮会比前一轮少一次。 排序的执行过程: ...

2021-12-29 18:06:22 621

原创 IDEA中java常用的几个注解

@Data : 注在类上,提供类的get、set、equals、hashCode、canEqual、toString方法 @AllArgsConstructor : 注在类上,提供类的全参构造 @NoArgsConstructor : 注在类上,提供类的无参构造 @Setter : 注在属性上,提供 set 方法 @Getter : 注在属性上,提供 get 方法 @EqualsAndHashCode : 注在类上,提供对应的 equals 和 hashCode 方法 @Log4j/@Slf4j : 注在类

2021-12-19 21:38:57 264

原创 & 和 && 的区别

Java 中 && 和 & 都是表示与的逻辑运算符,都表示逻辑运输符 and ,当两边的表达式都为 true 的时候,整个运算 结果才为 true ,否则为 false 。 && :有短路功能,当第⼀个表达式的值为 false 的时候,则不再计算第⼆个表达式。 & :不管第⼀个表达式结果是否为 true ,第⼆个都会执⾏。除此之外, & 还可以⽤作位运算符:当 & 两边的表达式 不是 Boolean 类型的时候, & 表示按位操

2021-12-18 18:53:02 145

原创 ==和equals的区别

==是看左右是否相等,考虑的是它们的来源是否相同。 equals只要字面意思相同就能判断出结果。

2021-12-18 18:50:15 56

原创 final关键字

final修饰的对象名需全部大写 1.final关键字修饰的变量,如果是基本数据类型不可变,但如果是引用数据类型,例如数组,可以改变其中元素的值。本质固定是内存地址。 2.final修饰全局变量,必须在声明时赋值,同时不可改变。final修饰局部变量,可以先声明再赋值,但只能赋值一次,并且使用时必须赋值。final修饰变量也就是只能赋值一次,不可修改。 3.final修饰的方法不能被重写。 4.final修饰的类不能被继承。 5.final还可以防止指令重排序,保障多线程下的数据安全。 ...

2021-12-18 18:45:00 92

原创 深拷贝和浅拷贝

浅拷贝: 被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅拷贝仅仅复制所考虑的对象,而不复制它所引用的对象。 深拷贝: 被复制对象的所有变量都含有与原来的对象相同的值.而那些引用其他对象的变量将指向被复制过的新对象。而不再是原有的那些被引用的对象。换言之,深拷贝把要复制的对象所引用的对象都复制了一遍。 ...

2021-12-18 18:43:18 194

原创 String、StringBuffer、StringBuilder三者的区别

1、String——字符串常量 String在Java中属于对象,Java提供了String类来创建和操作字符串。需要注意的是,String类型的字符串创建以后是什么就一直是什么,不能被改变。 创建String的两种方式: String s1 = "hello"; String s2 = new String("world"); 当你已经创建好了 "hello" 和 "world" 的时候,你想要令s3=s1+s2时,你需要在字符串常量池中重新开辟空间来存储s3的值 "hellowo...

2021-12-13 19:22:41 89

原创 SpringMVC框架中的拦截器

1.拦截器的概述 1.SpringMVC框架中的拦截器用于对处理器进行预处理 和后处理的技术。 2.可以定义拦截器链,拦截器链就是将拦截器按着一定 的顺序结成一条链,在访问被拦截的方法时,拦截器链 中的拦截器会按着定义的顺序执行。 3.拦截器和过滤器的功能比较类似,有区别 1.过滤器是Servlet规范的一部分,任何框架都可以 使用过滤器技术。 2.拦截器是SpringMVC框架独有的。 3.过滤器配置了/*,可以拦截任何资源。 4.拦截器只会对控制器(controller)中的方法进行 拦截,比如像css

2021-12-10 22:39:21 69

原创 equals()方法和hashCode()的联系

Object类,所有类的父类 一、为什么重写equals()方法一定要重写hashCode()方法 1.首先解释equals方法和hashcode方法分别是用来干什么的? equals()方法: 在Object类源码(如下所示)中,其底层是使用了“==”来实现,也就是说通过比较两个对象的内存地址是否相同判断是否是同一个对象。 public boolean equals(Object obj) { return (this == obj); } 但是在实际应用中,该方法不能满足的我们的需求。因为我们认为两个对

2021-12-10 22:36:28 126

原创 HTTPS 加密

加密 加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。 加密之所以安全的原因,并不在于加密解密算法的方法,而在于加密的密钥是绝对的隐藏。加密算法都是完全公开的,一方得到已加密的数据,就算知道加密算法,如果没有加密的密钥,也不能破解出被加密保护的信息。 加密的方式分为两种:对称加密和非对称加密。 对称加密 特点:对称加密,即使用相同的密钥来进行加密和解密。 优点:对称加密的优点是加密和解密速度快,适合大量加密的场景。

2021-12-10 22:34:41 127

原创 什么是git

什么是git git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。简而言之,就是可以对于我们的代码进行一定的版本控制。 git官网下载地址:Git - Downloads 安装步骤: 配置全局用户名和邮箱 git config --global user.name "Your Name"git config --global user.email "123456789@qq.com" 配置SSH # 生成sshkeyssh-keygen -t rsa -C ".

2021-12-03 21:22:33 62

原创 自动拆装箱和128陷阱

包装类 Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数据类型对应的类统称为包装类,对应关系如下图 那么,有了基本数据类型和包装类,肯定有些时候要在他们之间进行转换。比如把一个基本数据类型的int转换成一个包装类型的Integer对象。 我们认为包装类是对基本类型的包装,所以,把基本数据类型转换成包装类的过程就是装箱。反之,把包装类转换成基本数..

2021-12-03 17:26:29 82

原创 SQL中limit的用法和左右内连接写法和区别

limit 假如查询一个表,表名user,表里有十条数据: SELECT * FROM `user` //是查询整个表的数据 SELECT * FROM `user` LIMIT 5 //是查询从id1,开始的五个数据 SELECT * FROM `user` LIMIT 5,10//是查询从id6,开始到最后一个数据 SELECT * FROM `user` LIMIT 9,10; //是查询最后一个数据 limit(页数-1)*每页数量,每页数量 左右内连接写法和区别 假如我们...

2021-11-24 03:16:27 602

空空如也

空空如也

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

TA关注的人

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