- 博客(7)
- 收藏
- 关注
原创 Spring
控制反转IoC是一个很大的概念,可以用不同的方式来实现。其主要实现方式有两种:依赖注入和依赖查找依赖注入:相对于IoC而言,依赖注入(DI)更加准确地描述了IoC的设计理念。所谓依赖注入(Dependency Injection),即组件之间的依赖关系由容器在应用系统运行期来决定,也就是由容器动态地将某种依赖关系的目标对象实例注入到应用系统中的各个关联的组件之中。组件不做定位查询,只提供普通的Java方法让容器去决定依赖关系。
2023-08-25 22:31:22 80 1
原创 List、Set、Map的区别
Hashtable的synchronized是针对整张Hash表的,即每次锁住整张表让线程独占,ConcurrentHashMap允许多个修改操作并发进行,其关键在于使用了锁分离技术有些方法需要跨段,比如size()和containsValue(),它们可能需要锁定整个表而而不仅仅是某个段,这需要按顺序锁定所有段,操作完毕后,又按顺序释放所有段的锁扩容:段内扩容(段内元素超过该段对应Entry数组长度的75%触发扩容,不会对整个Map进行扩容),插入前检测需不需要扩容,有效避免无效扩容。
2023-08-24 20:25:49 87 1
原创 ArrayList去重的几种方法
第一种:通过LinkedHashSet来解决,LinkedHashSet是有序不可重复的,可以把ArrayList传入LinkedHashSet中。**第二种:使用Java8的新特性stream的distinct()方法来实现****第四种: 利用HashSet(无序唯一)的特性****第三种:使用contains()方法去重**
2023-08-20 19:02:43 2051 1
原创 阿里云OOS上传文件
阿里云对象存储服务(Object Storage Service,简称OSS)为您提供基于网络的数据存取服务。使用OSS,您可以通过网络随时存储和调用包括文本、图片、音频和视频等在内的各种非结构化数据文件。阿里云OSS将数据文件以对象(object)的形式上传到存储空间(bucket)中。创建一个或者多个存储空间,向每个存储空间中添加一个或多个文件。通过获取已上传文件的地址进行文件的分享和下载。通过修改存储空间或文件的属性或元信息来设置相应的访问权限。
2023-08-16 20:07:04 148
原创 spring读取yml配置的方法
启用对@ConfigurationProperties带注释的 Bean 的支持,方便了在每个读取类上都加上。使用格式:`@ConfigurationProperties(prefix = "xxx")
2023-08-15 19:01:28 255
转载 ArrayList扩容详解
从示例中可以看到,当添加元素时,如果元素个数+1> 当前数组长度 【size + 1 > elementData.length】时,进行扩容,扩容后的数组大小是: oldCapacity + (oldCapacity >> 1)将旧数组内容通过Array.copyOf全部复制到新数组,此时新旧列表的size大小相同,但elementData的长度即容量不同。注意:扩容并不是严格的1.5倍,是扩容前的数组长度右移一位 + 扩容前的数组长度。扩容容量不能太小,防止频繁扩容,频繁申请内存空间 + 数组频繁复制。
2023-08-14 20:53:52 97
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人