自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java中为什么重写equals时必须重写hashCode方法

hashCode主要用于提升查询效率,来确定在散列结构中对象的存储地址;重写equals()必须重写hashCode(),二者参与计算的自身属性字段应该相同;hash类型的存储结构,添加元素重复性校验的标准就是先取hashCode值,后判断equals();equals()相等的两个对象,hashcode()一定相等;反过来:hashcode()不等,一定能推出equals()也不等;hashcode()相等,equals()可能相等,也可能不等。...

2022-01-21 18:51:11 443

原创 HashMap源码分析

1.数据结构哈希桶数组Node<K,V>实现了Entry接口static class Node<K,V> implements Map.Entry<K,V> { final int hash; final K key; V value; Node<K,V> next; Node(int hash, K key, V value, Node<K,V> next

2022-01-21 14:51:56 554

原创 为什么 String 是不可变的

首先看String 源码1.final修饰String类,String不能被继承;2.final修饰char value[]变量,final修饰的变量只能赋值一次;3.String类内没有修改数组内容的方法

2022-01-15 20:10:48 153

原创 源码分析Java128陷阱

为什么会出现这种情况 原因就在于自动拆装箱。在Java SE5中,为了减少开发人员的工作,Java提供了自动拆箱与自动装箱功能。自动装箱:调用valueOf()方法将原始类型值转换成对象自动拆箱:调用intValue()方法,其他的(xxxValue())这类的方法将对象转换成原始类型值。当定义Integer 类型变量的时候,实际上是定义 Integer.valueOf变量即定义Integer a=127;实际上是 Integer a=Integer.valueOf(127);..

2022-01-15 19:56:48 108

原创 Spring boot 单点登录SSO

参考:分布式单点登录框架XXL-SSO测试需要两个项目 8080作为登录duan 8081作为测试端首先在两个项目中都加入依赖 <dependency> <groupId>com.xuxueli</groupId> <artifactId>xxl-sso-core</artifactId> <version>1.1.0</versi

2021-12-28 18:20:50 1838

原创 git命令

1.分支管理创建分支git branch xxx分支 #创建git checkout xxx分支 #切分支git checkout -b xxx分支名字 #创建并切分支查看分支git branch命令不只是可以创建与删除分支。 如果不加任何参数运行它,会得到当前所有分支的一个列表git brancn #查看本地分支git brancn -a #查看所有分支--merged与--no-merged这两个有用的选项可以过滤这个列表中已经合并或尚未合...

2021-12-16 17:40:00 78

原创 Spring AOP

在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。 简单来说就是,aop将那些与业务无关、却有多个业务共同需要的功能封装起来,...

2021-12-15 18:36:52 73

原创 spring boot 定位切点两种方法

1.通过自定义注解完成每个方法上添加该注解就可以使用该切面//定义切点,注解作为切入点 @Pointcut("@annotation(com.xxxx.Log)") public void selfRecordsPoinCut() { } /** * before 目标方法执行前执行,前置通知 * after 目标方法执行后执行,后置通知 * after returning 目标方法返回时执行 ,后置返回通知 * aft.

2021-11-21 10:49:02 1269

原创 力扣刷题(3)

1110.删点成林根节点不是删除节点的话加入森林,前序遍历二叉树,当前节点为删除结点且他左右孩子不为空,则左右孩子加入森林,并将当前树设为空。class Solution { private boolean[] flag=new boolean[1001]; public List<TreeNode> delNodes(TreeNode root, int[] to_delete) { for(int x:to_delete) flag[x]=tr.

2021-11-21 10:23:47 314

原创 力扣刷题(2)

剑指 Offer 34.二叉树中和为某一值的路径深度优先搜索回溯从根节点开始,先序遍历树,记录结点的值加入List集合,同时整数目标和减去当前值,当是根节点的时候,判断整数目标和是否等于0,如果是把节点List集合塞进返回结果集里,并且清除List集合中当前节点的值class Solution { List<List<Integer>> res = new LinkedList<List<Integer>>(); Li.

2021-11-21 10:12:49 313

原创 力扣刷题(1)

1838.最高频元素得频数class Solution { public int maxFrequency(int[] nums, int k) { Arrays.sort(nums); int left=0; int right=1; int res=1; int sum=0; while(right<nums.length){ sum+=(nums[rig.

2021-11-21 09:58:39 212

原创 Spring Boot 集成 JWT

1.首先引入maven依赖 <!--JWT依赖--> <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactId> <version>3.4.0</version> </depend

2021-11-12 21:55:08 336

原创 Spring boot集成拦截器

1.添加拦截器 LoginInterceptor文件package com.test.demo.interceptor;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.servlet.HandlerInterceptor;import org..

2021-11-03 19:08:32 65

原创 Spring boot集成 日志框架log4j2

log4j2是log4j的升级版logback是spring boot默认的日志框架1.在pom.xml中加入依赖<!-- 支持log4j2的模块--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-log4j2</artifactId></dependency>2.并且在w

2021-11-03 19:01:23 145

原创 Spring boot集成PageHelper 分页插件

1.在pom.xml中添加依赖<!--pageHelper分页插件--><dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.3.0</version></dependency>

2021-11-03 18:46:15 93

原创 Spring boot集成Mybatis

1.先创建一个string boot项目2.写好项目名包名 选择好java版本 点击Next 勾选在web下的Spring Web(Spring Mvc)3.Mybatis 整合将版本改为2.1.3.RELEASE在pom.xml中添加依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> &l...

2021-11-03 18:36:58 78

原创 join内连接、左连接、右连接的区别

sql中的连表查询 inner join(内连接)、left join(左连接)、right join(右连接)区别就是查询出的结果不同内连接就是图中 集合1和集合2的交集查询两表交集,左连接就是查询两表的交集和左边主表的其他元素如图中整个集合1 (包括两表交集和只有集合1部分)右连接同左连接 只不过把join右边的表当作主表。举个例子:学生表 student班级表 class这是两个sql表 其中学生表有所在班级 有的同学没有 同样在班级表在也有没有...

2021-11-03 13:33:55 2394 1

原创 为什么加了@Transactional缺不回滚事务

原来是数据库引擎MyISAM不支持事物回滚 要改成InnoDB引擎

2021-10-30 12:24:19 105

原创 idea Unable to import maven project: See logs for details

idea 2019.1版本与maven3.6以上版本冲突。需要maven降版本或者idea提升版本。

2021-10-27 23:21:06 59

原创 java Script 1

JavaScript变量 定义变量方式 <script>a="123";//隐式定义变量 隐式定义的变量为全局变量vara;//显式定义变量 var a,b,c;//可以一次定义多个变量 区分大小写</script> 自动类型转换 <script>var a=123 //a为数字var a="123" //a为字符var a=123asd //报错 a什么都不是//在js中+号可以是加法也可以是...

2021-07-12 22:36:34 1497

原创 CSS侧重点

字体font-family:设置文字字体,需要浏览器中有这种字体,可以设置多个字体让浏览器依次寻找(用, 隔开)font-size-adjust:对不同字体的大小进行微调,用一个数值代表比例横向拉伸收缩(font-stretch横向拉伸压缩)1em=16px(大多数情况)font-style:设置斜体,normal(多数设置默认为normal),italic,oblique分别表示字体正常,斜体,倾斜字体(两个倾斜一样 记italic)font-weight:设置字体加粗,使用lighter,n

2021-07-12 00:02:59 199

原创 每天一个liunx命令(1)ls命令

Linux ls命令用于显示指定工作目录下的内容1.ls 直接使用ls命令 查看当前目录下的内容绿色---->代表可执行文件红色---->代表压缩文件深蓝色---->代表目录浅蓝色----->代表链接文件灰色---->代表其它的一些文件2.ls 后面可以跟文件路径 来列出起内容 如: ls /列出根目录下的内容3.ls -l 同ll 列出比ls更加详细的内容,文件型态、权限、拥有者、文件大小等信息详细列出4.ls -a...

2021-07-04 22:32:23 123

空空如也

空空如也

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

TA关注的人

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