Java基础知识
文章平均质量分 90
七年后的七年前
这个作者很懒,什么都没留下…
展开
-
Java 中的 BIO、NIO、AIO学习
1.I/O何为 I/O?I/O(Input/Outpu) 即输入/输出 。我们先从计算机结构的角度来解读一下 I/O。根据冯.诺依曼结构,计算机结构分为 5 大部分:运算器、控制器、存储器、输入设备、输出设备。从计算机结构的视角来看的话, I/O 描述了计算机系统与外部设备之间通信的过程。根据大学里学到的操作系统相关的知识:为了保证操作系统的稳定性和安全性,一个进程的地址空间划分为 用户空间(User space) 和 内核空间(Kernel space ) 。像我们平常运行的应用程序都是运转载 2021-05-26 14:37:15 · 140 阅读 · 0 评论 -
在 Spring/Spring Boot 中实现优雅地参数校验
最近在写项目的时候,在每一个controller都充满了大量的if来校验参数,而且每一个controller还不同,不能把校验的方法封装起来.特别麻烦.最普通的做法就像下面这样。我们通过 if/else 语句对请求的每一个参数一一校验。 if ( StringUtils.isBlank(dto.getFwsz().get(i).getFwmc()) || dto.getFwsz().ge原创 2021-05-12 10:01:03 · 344 阅读 · 0 评论 -
初次学习与使用 Java中的 OPTIONAL
在 Java 8 之前,任何访问对象方法或属性的调用都可能导致 NullPointerException:String isocode = user.getAddress().getCountry().getIsocode().toUpperCase();这种多层嵌套,如果其中一个为NULL,就会触发NullPointerException.为此,必须进行判断.if (user != null) { Address address = user.getAddress(); if (原创 2021-01-28 17:56:49 · 105 阅读 · 0 评论 -
SpringAOP实现valid参数校验
最近在写项目的时候,在每一个controller都充满了大量的if来校验参数,而且每一个controller还不同,不能封装起来.原创 2020-10-22 14:32:44 · 311 阅读 · 0 评论 -
ArrayList和LinkedList空间占用问题
1.ArraList是实现了java.io.Serializable接口的,按理说是要在网络传输之间序列化的.2.数据存放在 transient Object[] elementData. transient关键字一句话说明含义:将不需要序列化的变量声明为,当序列化对象的时候,这个属性将不会被序列化.3.ArrayList 实现 Serializable接口 但是储存数据的又被transitent修饰是为什么?4.当new(initial)一个ArrayList的时候默认的size是10(如果没有指原创 2020-09-01 22:50:54 · 1494 阅读 · 0 评论