- 博客(76)
- 收藏
- 关注
原创 权限管理项目
权限管理项目数据库设计与创建基于Spring Security的登录与授权用户管理基于Token的身份校验和权限管理全局异常处理基于Token的权限过滤跨域问题公告管理及日志查询
2021-09-23 15:42:01
208
原创 红黑树理解
红黑树理解B站上看了红黑树的讲解,大致回顾一下自己的理解。首先对于红黑树的认识,要先知道什么是二叉查找树 ->AVL树(平衡二叉树)->红黑树。这三种树是层层递进的。红黑树相对于AVL来说,对于平衡条件要求没那么严格,在插入和删除等过程中,自旋操作没那么频繁,更加适合于插入和删除操作,AVL的查找性能更好一点。两者之间的优缺点如下:对于红黑树的特性需要知道以下几点:红黑树的节点要么是红色,要么是黑色,叶节点为黑色,属于null,根节点都是黑色的。红属性:红色节点的左右子节点都是黑色
2021-09-16 16:21:50
146
原创 Redis学习笔记
Redis学习笔记NoSQL:Not only SQL非关系型数据库NoSQL特点:1 方便扩展(数据之间没有关系,很好扩展)2 大数据量高性能(Redis一秒可以写8万次,一秒可以读11万次,NoSQL的缓存记录级是一种细粒度的缓存,性能会比较高)3 数据类型是多样型的,不需要事先设计数据库,随取随用。RDBMS:关系型数据库 和NoSQL:Redis(Remote dictionary server)远程字典服务:也被称为结构化数据库Redis到底能干嘛?特性:Redi
2021-09-14 20:55:50
112
原创 Java框架学习-SSM(Day05)
SSM学习笔记Day05MyBatis什么是Mybatis?开发步骤:MyBatis默认事务是不提交的。MyBatis基本的增删改查:动态SQL:例如if foreach等的使用自定义类型:分页的配置:
2021-09-04 18:47:42
102
原创 Java框架学习-SSM(Day04)
SSM学习笔记Day04XML配置AOP:切点表达式的写法知识要点总结:基于注解的AOP开发步骤编程式事务控制相关对象编程式事务控制三大对象什么是声明式事务控制:一般情况下,自定义bean用注解,非自定义bean用xml配置文件形式,因为拿不到源码。...
2021-09-03 23:02:11
115
原创 Java框架学习-SSM(Day03)
SSM学习笔记(Day03)MVC实现数据请求方式:Spring JdbcTemplate基本使用开发步骤:代码如下:数据库删表,先删从表,因为一般有foreign key限制。Spring MVC拦截器(Interceptor):Spring MVC的拦截器作用类似于Servlet开发过程中的过滤器Filter,用于对处理器进行预处理和后处理。自定义拦截器的步骤:SpringMVC异常处理:两种方式:1、简单异常处理器SimpleMappingExceptionReso
2021-09-03 16:09:31
115
原创 Java框架学习-SSM(Day02)
SSM学习Day01SpringMVC回写数据,当返回对象或者集合时,通过SpringMVC帮助我们对对象或集合进行json字符串的转换并回写,为处理器适配器配置消息转换参数,指定jackson进行对象或者集合的转换,因此需要在spring-mvc.xml中进行如下配置:SpringMVC的三大组件:处理器映射器、处理器适配器、视图解析器通过MVC的注解驱动代替@ResponseBody相关的配置,简化了不少:spring-mvc开放资源的访问:<mvc:resource mapping
2021-08-30 22:34:59
108
原创 MySQL学习笔记Day01
前言本来打算直接看MySQL高级教程的,因为之前看过MySQL必知必会这本书,有一定 的数据库基础,但过了这么久感觉忘了很多,因此,找个时长较少的视频(动力节点),回顾一下MySQL基础,然后配合着尚硅谷的高级视频,把数据库拿下!!!MySQL端口号为3306...
2021-08-27 14:53:36
221
原创 版本管理Maven学习笔记Day01
Maven学习笔记Day01Maven是什么?仓库的分类:坐标:第一个Maven项目(手动制作):dependency中的scope确定了作用范围:依赖范围传递性(了解即可):maven项目构建生命周期分为3套:
2021-08-26 11:35:04
86
原创 Java学习笔记Day42
Java学习笔记Day42Stream的中间操作:过滤、映射、筛选等。空指针异常是导致Java应用程序失败的最常见原因。复习课:静态代理的缺点:1、代理类和目标对象的类都是在编译期间确定下来,不利于程序的扩展。2、每一个代理类只能为一个接口服务,这样一来程序开发中必然产生过多的代理。动态代理的特点:动态代理是指客户通过代理类来调用其他对象的方法,并且是在程序运行时根据需要动态创建目标类的代理对象。...
2021-08-23 10:04:27
65
原创 学习笔记Day41
学习笔记Day41动态代理:代理设计模式的原理:使用一个代理将对象包装起来,然后用该对象取代原始对象。任何对原始对象的调用都要通过代理。代理对象决定是否以及何时将方法调用转到原始对象上。动态代理相比于静态代理的优点:抽象角色中(接口)声明的所有方法都被转移到调用处理器一个集中的方法中,这样,我们就可以更加灵活和统一的处理众多的方法。要想实现动态代理,需要解决的问题:1、如何根据加载到内存中的被代理类,动态的创建一个代理类及其对象2、当通过代理类的对象调用方法时,如何动态的去调用被代理类中的同
2021-08-22 10:26:27
72
原创 JVM学习笔记Day04
JVM学习笔记Day04线程对volatile变量的写,对接下来其他线程对该变量的读可见。CAS(compare and swap)与原子类:CAS体现的是乐观锁的思想,结合CAS和volatile可以实现无锁并发,适用于竞争不激烈,多核CPU的场景下。乐观锁与悲观锁:其他优化:...
2021-08-20 15:08:58
143
原创 JVM学习笔记Day03
JVM学习笔记Day03方法重写时对返回值分两种情况:1、父子类的返回值完全一致2、子类返回值可以是父类返回值的子类匿名内部类如果传参数,必须是final类型。String.class 叫做类镜像static静态变量分配空间和赋值是两个步骤,分配空间在准备阶段完成,赋值在初始化阶段完成。解析就是将常量池中的符号引用解析为直接引用。类加载器:所谓双亲委派模式是指调用类加载器的loadClass方法时,调用类的规则。这的双亲,翻译为上机似乎更为合适,因为他们并没有继承关系。JDK在某些情
2021-08-20 09:58:13
151
原创 JVM学习笔记Day02
JVM学习笔记Day02CMS:ConcurrentMarkSweep:并发标记清除,响应时间优先并发与并行的 区别:并发是指垃圾回收线程和用户线程同时运行,强占CPU;并行是指多个垃圾回收器同时运行,会有stop the world,用户线程会暂停执行。CMS若并发失败,会退化为serialold,时间一下子会增多。G1:Garbage First (2017 JDK9 默认)JDK8u60回收巨型对象:当一个对象大于region的一半时,称为巨型对象;G1不会对巨型对象进行拷贝
2021-08-12 22:27:18
134
原创 JVM学习笔记Day01
JVM学习笔记Day01前言前言今天开始学习java虚拟机了,本来说打算看视频的,但发尚硅谷的视频内容太多了,时长五十多个小时,时间已经来不及了。所以只能选择时长较少的黑马程序员课程,看评价也挺高的,但可能深度没那么够。那就先从宏观上了解一下大致技术和知识,后续准备面试的时候,背背八股文,里面有不懂的再网上查一查,只能这样子了。...
2021-08-05 16:59:47
187
原创 学习笔记Day40
学习笔记Day40通过反射可以获得方法的各种结构,比如权限修饰符,返回值类型,方法名,参数,异常等等。反射还可以获得构造器,getConstructors,包,注解…重点:调用运行时类的指定结构,例如属性:先创建运行时类的对象然后获取指定的属性再设置当前属性的值getDeclaredField(name: xx)获取运行时类中指定名的属性name.setAccessible(true):保证当前属性是可访问的。如何操作运行时类中的 指定的方法 --掌握invoke()的返回值即为对应
2021-08-03 22:30:56
71
原创 LeetCode HOT100
力扣HOT100刷题记录1.两数之和2. 两数相加3.无重复字符的最长子串6. Z字形变换7.整数反转1.两数之和这道题比较简单,直接利用哈希map建立一个字典,然后遍历循环,当前面存的key存在等于target-nums[i],则返回找到的数字的索引。若不存在,则将键值对放入hashmap中。最后遍历结束如果还没找到,就返回一个int数组[0],空数组。class Solution { public int[] twoSum(int[] nums, int target) {
2021-08-03 17:01:53
1029
原创 学习笔记Day39
学习笔记Day39读取配置文件的方式:通过反射调用的getInstance()调用此方法,创建对应的运行时类的对象。内部调用了运行时类的空参的构造器。要求:1 运行时类必须提供空参的构造器 2 空参的构造器的访问权限得够。通常设置为public。在Javabean中要求提供一个public的空参构造器,原因是便于通过反射,创建运行时类的对象。便于子类继承此运行时类,默认调用super()时,保证父类有此构造器。getFields():获取当前运行时类及其父类中声明为public访问权限的属性。g
2021-08-01 20:06:01
71
原创 学习笔记Day38
学习笔记Day38TCP:可靠的数据传输(三次握手),进行大数据量的传输;效率低UDP:不可靠,以数据报形式发送, 数据报限定为64k;效率高URL:统一资源定位符。 URL url = new URL (“http://192.168.14.100:8080/example/hello.txt?username=Tom”)接下来学习反射了:反射和封装技术不矛盾。封装相当于建议如何使用,比如public和private的权限使用。但反射就属于要强行调用一些私有的构造器或者方法啥的,也可以。关于
2021-07-29 17:34:34
82
原创 学习笔记Day37
学习笔记Day37对象流:用于存储和读取的基本数据类型数据或对象的处理流。强大之处在于可以将java的对象写入数据源中,也能把对象从数据源中还原回来。序列化过程:将内存中的java对象保存在磁盘中或者通过网络传输出去。反序列化:将磁盘文件中的对象还原为内存中的一个java对象。类要想实现可序列化,满足条件:需要实现接口:Serializable当前类提供了一个全局常量:serialVersionUID除了当前类需要实现Serializable接口之外,还必须保证其内部所有属性也必须是可序列
2021-07-28 22:05:57
291
2
原创 学习笔记Day36
学习笔记Day36好长一段时间没看视频了,前段时间要么在改论文格式,要么在刷题。似乎快忘了刷视频的感觉了,视频还没看完,几天继续走起来把,gogogogogo!!!注意事项:如果创建文件或者文件目录没有写盘符路径,那么,默认在项目路径下。...
2021-07-27 22:09:05
91
原创 学习笔记Day35
学习笔记Day35添加:对于List<?>就不能向其内部添加数据。除了添加null之外。IO流:File 代表一个文件或者文件目录,其声明在java.io包下
2021-07-17 21:19:09
76
原创 学习笔记Day34
学习笔记Day34泛型:JDK5的新特性注意Map中entry的泛型表示(泛型嵌套 ):在集合中使用泛型总结:泛型类的构造器不加<>。泛型不同的引用不能相互赋值。静态方法中不能使用类的泛型,异常类不能使用类的泛型父类有泛型,子类可以选择保留泛型也可以指定泛型类型:泛型方法,可以声明为静态的,原因是泛型参数是在调用方法时确定的,并非在实例化类时确定的。类A是B的父类,A是B的父类...
2021-07-11 10:36:33
53
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人