随笔分类 - JAVA
摘要:1. 注解处理器(Annotation Processor)的定义与作用 定义 注解处理器是 Java 编译器的一种工具(javax.annotation.processing.Processor接口的实现类),它在编译期扫描和处理源代码中的注解(Annotation),并根据注解逻辑生成新的 Ja
阅读全文
posted @ 2025-10-25 15:44
liftsail
摘要:SpringBoot命令行启动时参数配置 一、配置方式 1. 参数配置 通过命令行参数来配置Spring Boot应用程序是一种常见的方式。在命令行中,可以使用--<property>=<value>的形式来传递参数。这些参数会被Spring Boot解析并应用到应用程序的配置中。例如,可以使用以下
阅读全文
posted @ 2025-03-27 10:35
liftsail
摘要:1 简介 SPI,Service Provider Interface,一种服务发现机制。 有了SPI,即可实现服务接口与服务实现的解耦: 服务提供者(如 springboot starter)提供出 SPI 接口。身为服务提供者,在你无法形成绝对规范强制时,适度"放权" 比较明智,适当让客户端去自
阅读全文
posted @ 2025-03-26 17:29
liftsail
摘要:1、什么是双亲委派? 2、为什么需要双亲委派,不委派有什么问题? 3、"父加载器"和"子加载器"之间的关系是继承的吗? 4、双亲委派是怎么实现的? 5、我能不能主动破坏这种双亲委派机制?怎么破坏? 6、为什么重写loadClass方法可以破坏双亲委派,这个方法和findClass()、defineC
阅读全文
posted @ 2024-06-04 17:15
liftsail
摘要:<? extends E> <? extends E> 是 Upper Bound(上限) 的通配符,用来限制元素的类型的上限,比如 List<? extends Fruit> fruits; 表示集合中的元素类型上限为Fruit类型,即只能是Fruit或者Fruit的子类,因此对于下面的赋值是合理
阅读全文
posted @ 2024-06-01 14:48
liftsail
摘要:SSM web项目 以工程名为TEST为例: (1)得到包含工程名的当前页面全路径:request.getRequestURI() 结果:/TEST/test.jsp (2)得到工程名:request.getContextPath() 结果:/TEST (3)得到当前页面所在目录下全名称:reque
阅读全文
posted @ 2024-06-01 14:33
liftsail
摘要:一、前言 下载文件在我们项目很常见,有下载视频、文件、图片、附件、导出Excel、导出Zip压缩文件等等,这里我对常见的下载做个简单的总结,主要有文件下载、限速下载、多文件打包下载、URL文件打包下载、Excel导出下载、Excel批量导出Zip包下载、多线程加速下载。 二、搭建Spring Boo
阅读全文
posted @ 2024-06-01 13:48
liftsail
摘要:public static void main(String[] args) throws UnsupportedEncodingException { String origin = new String("元字符".getBytes(StandardCharsets.UTF_8), "iso88
阅读全文
posted @ 2024-05-31 15:32
liftsail
摘要:private String dateToRelativeTime(Date date) { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date now = new Date(); long between
阅读全文
posted @ 2024-05-31 13:35
liftsail
摘要:Tomcat配置目录有以下两个 1.spring.servlet.multipart.location:文件上传路径 2.server.tomcat.basedir:配置Tomcat运行日志和临时文件的目录。 如果生产中配置了这两个目录,当上传文件时,他们的优先级是? 当上传文件时,代码执行到Req
阅读全文
posted @ 2024-05-31 13:11
liftsail
摘要:Runnable的实现方式是实现其接口即可 Thread的实现方式是继承其类 Runnable接口支持多继承,但基本上用不到 Thread实现了Runnable接口并进行了扩展,而Thread和Runnable的实质是实现的关系,不是同类东西,所以Runnable或Thread本身没有可比性。 网络
阅读全文
posted @ 2023-02-07 17:14
liftsail
摘要:1.以流的方式下载. public HttpServletResponse download(String path, HttpServletResponse response) { try { // path是指欲下载的文件的路径。 File file = new File(path); // 取
阅读全文
posted @ 2023-02-07 17:03
liftsail
摘要:package com.education.common.utils; import org.springframework.web.multipart.MultipartFile; import sun.misc.BASE64Decoder; import java.io.*; /** * @au
阅读全文
posted @ 2023-02-06 09:20
liftsail
摘要:package com.liftsail.qiniurefererdemo.test; import java.util.ArrayList; import java.util.List; import java.util.ListIterator; /** * @Author: liftsail
阅读全文
posted @ 2022-12-08 13:27
liftsail
摘要:package com.liftsail.testprofiledemo.utiltest; import org.springframework.util.CollectionUtils; import java.util.*; /** * @Author: liftsail * @Date: 2
阅读全文
posted @ 2022-12-02 13:05
liftsail
摘要://Java拼接字符串时,去掉最后一个多余的逗号 String str[] = { "hello", "beijing", "world", "shenzhen" }; StringBuffer buf = new StringBuffer(); for (int i = 0; i < str.le
阅读全文
posted @ 2022-12-02 10:05
liftsail
摘要:1.maven依赖 <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.10</version> </dependency> 2.代码 package com.
阅读全文
posted @ 2022-11-24 13:17
liftsail

浙公网安备 33010602011771号