SpringBoot:文件上传下载

前言在 Spring Boot 中实现文件的上传和下载。实现文件上传上传一个文件,并保存在指定位置:@PostMapping("/upload")public String upload(@RequestParam(value = "file") Multip
Java 2023年03月10日 869次浏览

Java:枚举类的用法

前言针对枚举类的基础用法大家可参考菜鸟教程,本文记录一下稍微复杂点的用法(不同用法的本质是相同的,只是形式有所不同)。实现设想这样一个应用场景:根据一个给定的值,如果这个值在某个集合内,就返回特定的 code 和 name 。定义枚举类针对如上场景,我们把值的集合定义为一个 List(已给定初始化值
Java 2023年03月08日 681次浏览

多线程:如何确保多线程中所有任务执行完成

背景在 多线程 的应用场景中,可能有些功能代码需要在所有任务执行完成后才可以继续执行,那么如何确保线程中所有任务都已执行完成了呢?如以下代码,Hello,World!在任务完成之前就输出了:import java.util.concurrent.*;/** * @author 郎家岭伯爵 */pub
Java 多线程 2023年02月15日 711次浏览

final关键字

背景关于 final 关键字的使用。理论final 修饰方法:表示方法不可被子类重写(覆盖)。final 修饰变量:初始化一次后值不可变。final 修饰类:类不能被继承,内部的方法和变量都变成 final 类型。final 修饰对象:指对象的引用不可变,但是对象的值可变,即指向的是同一个对象,但是
Java 2023年02月15日 864次浏览

线程池创建多线程

背景使用线程池创建多线程。实现线程池创建方式创建线程池有两种方式:使用 Executors 创建;使用 ThreadPoolExecutor 创建。Executors 是对 ThreadPoolExecutor 进行了一层封装,因此使用起来会比较方便。但阿里的 Java开发手册 建议我们使用 Thr
Java 多线程 2023年02月13日 705次浏览

Hutool工具类

背景如 Hutool 作者在官网中所写:Hutool 是一个小而全的Java工具类库,通过静态方法封装,降低相关 API 的学习成本,提高工作效率,使 Java 拥有函数式语言般的优雅,让 Java 语言也可以“甜甜的”。Hutool = Hu + tool,是原公司项目底层代码剥离后的开源库,“H
Java 2023年01月29日 1,090次浏览

Collections工具类

背景Collections 工具类 JDK 提供的一个工具类,位于 java.util 包下,提供了一系列的静态方法,方便我们对集合进行各种操作,算是集合框架的一个大管家。实现排序操作reverse(List list):反转顺序shuffle(List list):洗牌,将顺序打乱sort(Lis
Java 2023年01月29日 869次浏览

多线程的守护线程

背景多线程的守护线程。实现Thread的setDaemon方法可设置守护线程。注:默认线程均为用户线程,守护线程需要把setDaemon设置为true;虚拟机必须确保用户线程完成执行,而不用等待守护线程完成执行。守护线程应用场景:后台记录操作、监控内存、垃圾回收等待。代码package com.la
Java 多线程 2022年05月10日 783次浏览

多线程的线程优先级

背景多线程的线程优先级。实现Thread的setPriority方法可设置线程的优先级。代码注:setPriority()方法要先于start()方法执行,需要先设置线程的优先级才会生效;优先级高仅表示线程获得CPU调度的权重大,并不代表着一定会先于优先级低的线程执行。package com.lan
Java 多线程 2022年05月10日 827次浏览

多线程的线程强制插队执行-join

背景多线程的线程插队执行-join。实现join方法会强制让线程执行,并在线程执行结束后再开始执行其它线程。代码package com.langjialing;import java.awt.*;public class ThreadJoin implements Runnable{ @Ove
Java 多线程 2022年05月10日 728次浏览