自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 springboot 2.4 随手笔记

2.1 Using the “default” Package 最好避免用default 包 2.2 main函数主类加@SpringBootApplication,如果不用的话,可以用@EnableAutoConfiguration和@ComponentScan代替 2.3 配置类 @Configuration 最好用配置类,不要用xml 3.1 增加配置类 不需要把配置类都写在一个类中,可以用@Import导入其他配置类, 或者用ComponentScan 自动装配spring组件,包括@Config

2020-08-30 01:33:24 4028

原创 springsecurity初体验(5.3.5官方文档)-1

5.1.2 密码存储 PasswordEncoder,5.0之前默认的NoOpPasswordEncoder ,框架用了DelegatingPasswordEncoder模式,方便将来更新存储方式的时候不用变动框架。 创建委托: PasswordEncoder passwordEncoder = PasswordEncoderFactories.createDelegatingPasswordEncoder(); 创建自定义的委托: String idForEncode = "bcrypt"; M

2020-08-27 01:15:04 1730

原创 鸟枪换炮读源码系列之ArrayList(java11)

经常用到ArrayList,知道和LinkedList的优缺点,但是没那么读过源码。 首先它继承了AbstractList,实现了List接口,RandomAccess接口(支持快速随机访问,查询快的标记接口),Cloneable接口,序列化接口。 初始化参数: // 初始容量为10 private static final int DEFAULT_CAPACITY = 10; // 空数组实例 private static final Object[] EMPTY_ELEMENTDATA = {};

2020-05-20 06:57:21 201

原创 java并发编程之美读书笔记-3

java并发编程之美读书笔记-3 线程池主要解决两个问题:一是当执行大量异步任务时线程池能够提供较好的性能。在不使用线程池时,每当需要执行异步任务时直接new一个线程来运行,而线程的创建和销毁是需要开销的。线程池里面的线程是可复用的,不需要每次执行异步任务时都重新创建和销毁线程。二是线程池提供了一种资源限制和管理的手段,比如可以限制线程的个数,动态新增线程等。每个ThreadPoolExecut...

2020-05-04 17:56:37 285

原创 java并发编程之美读书笔记-2

java并发编程之美读书笔记-2 每个Random实例里面都有一个原子性的种子变量用来记录当前的种子值,当要生成新的随机数时需要根据当前种子计算新的种子并更新回原子变量。在多线程下使用单个Random实例生成随机数时,当多个线程同时计算随机数来计算新的种子时,多个线程会竞争同一个原子变量的更新操作,由于原子变量的更新是CAS操作,同时只有一个线程会成功,所以会造成大量线程进行自旋重试,这会降低并...

2020-05-01 20:34:36 246

原创 java并发编程之美读书笔记-1

重温java并发编程之美-1 一个进程中有多个线程,多个线程共享进程的堆和方法区。但是每个线程有自己的程序计数器和栈区域。 程序计数器就是为了记录该线程让出CPU时的执行地址的,待再次分配到时间片时线程就可以从自己私有的计数器指定地址继续执行。 如果执行的是native方法,那么pc计数器记录的是undefined地址,只有执行的是Java代码时pc计数器记录的才是下一条指令的地址。 每个线程都...

2020-04-26 20:52:48 146

原创 重温java从入门到精通(第2版)- 4

重温java从入门到精通(第2版)- 4 定义一个注解的形式 @interface MyAnnotation{ public String key() default "language"; public String value() default "java"; } 如果key没有被初始化,那么注解的时候必须提供值,类似 @myAnnotation(key="...") 自定义注解...

2020-04-02 23:34:28 123

原创 重温java从入门到精通(第2版)-3

重温java从入门到精通(第2版)-2 String类中关于正则的几个方法 public boolean matches(String regex) 将字符串与给出的正则进行匹配 public String replaceAll(String regex, String replacement) 按照指定的正则全部替换 public String replaceFirst(String reg...

2020-04-01 19:33:34 103

原创 重温java从入门到精通(第2版)-2

重温java从入门到精通(第2版)-2 Map是Java中的一个类, EnumMap是Map接口的子类,它被视为专门为枚举类型量身定做的Map实现。虽然使用其他Map实现(例如HashMap)也可以完成枚举类型实例到值的映射,但使用EnumMap会更为高效。这是因为EnumMap只接收同一枚举类型的实例作为键值,枚举类型实例的数量有限并且相对固定,因此EnumMap使用数组来存放与枚举类型对应的...

2020-03-30 23:37:32 174

原创 重温java从入门到精通(第2版)- 1

重温java从入门到精通(第2版)- 1 所有的Java源代码(以.java为扩展名),通过Java编译器javac (javac命令中字母c来自于compiler的首字母)编译成字节码,也就是以.class为扩展名的文件。然后利用命令java将对应的字节码通过Java虚拟机(JVM)解释为特定操作系统(如Windows、Linux等)能理解的机器码,最终Java程序得以执行。 Java程...

2020-03-25 16:41:24 180

空空如也

空空如也

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

TA关注的人

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