自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

阿垂的博客

一个记录Java学习过程的博主

  • 博客(52)
  • 收藏
  • 关注

原创 Java 面试题 20250227

将 Java 对象转化成可传输的字节序列格式(字节流、JSON、XML),以便于传输和存储。:将字节序列格式数据转化成 Java 对象的过程。

2025-02-27 21:33:02 58

原创 SpringBoot实现多环境配置切换

Springboot如何实现多环境配置?(代码分析)_springboot如何在一个配置文件中指定多套环境-优快云博客

2025-02-17 15:45:27 165

原创 Swagger 3 注解

描述:用于给 API 分组,用途类似于为 API 文档添加标签。描述:用于描述请求体或响应的内容。描述:用于描述 API 的操作。描述:用于描述操作的输入参数。描述:用于描述操作的响应结果。描述:用于描述数据模型的属性。描述:用于描述响应结果的内容。描述:用于描述数据模型的属性。描述:用于描述操作的请求体。可用于:方法、类、接口。可用于:方法、类、接口。描述:用于定义路径参数。描述:用于描述路径参数。描述:用于描述查询参数。描述:用于描述响应结果。可用于:方法、类、接口。

2025-02-14 17:33:58 1139

原创 SpringBoot3使用Swagger3

Swagger2 和 Swagger3 使用的是完全不同的两套注解,所以原本使用 Swagger2 相关注解的代码页需要完全迁移,改为使用 Swagger3 的注解。@Tag(name = "UserController", description = "用户接口")@Api(value = "用户接口", tags = "UserController")@ApiOperation(value = "查询用户数据")@Schema(name = "用户名称")@Schema(name = "用户名称")

2025-02-14 16:54:21 704

原创 StringUtils工具类的使用

StringUtils的使用

2025-02-14 13:01:46 724

原创 01 - 初识 Spring

Spring是最受欢迎的企业级 Java 应⽤程序开发框架,数以百万的来⾃世界各地的开发⼈员使⽤ Spring 框架来创建性能好、易于测试、可重⽤的代码。Spring 框架是⼀个开源的 Java 平台,它最初是由 Rod Johnson(Spring之⽗) 编写的,并且于 2003 年 6 ⽉⾸次在 Apache 2.0 许可下发布。Spring 是轻量级的框架,其基础版本只有 2 MB 左右的⼤⼩。

2024-12-26 16:16:25 698

原创 25 - Java 8 的新特性

Lambda 表达式:30 - Java Lambda 表达式-优快云博客方法引用:31 - Java 8 方法引用-优快云博客函数式接口:32 - Java 8 函数式接口-优快云博客默认方法:33 - Java 8 默认方法-优快云博客Stream:34 - Java 8 Stream-优快云博客Optional:35 - Java 8 Optional 类-优快云博客

2024-12-25 10:25:47 1080

原创 35 - Java 8 Optional 类

如果返回值不为 null,则创建包含映射返回值的Optional作为map方法返回值,否则返回空Optional。如果值存在,并且这个值匹配给定的 predicate,返回一个Optional用以描述这个值,否则返回一个空的Optional。如果值存在,返回基于Optional包含的映射方法的值,否则返回一个空的Optional。如果为非空,返回 Optional 描述的指定值,否则返回空的 Optional。如果存在该值,返回值, 否则触发 other,并返回 other 调用的结果。

2024-12-25 09:56:17 697

原创 34 - Java 8 Stream

元素流在管道中经过中间操作(intermediate operation)的处理,最后由最终操作(terminal operation)得到前面处理的结果。这种风格将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选, 排序,聚合等。sorted 方法用于对流进行排序。System.out.println("列表中最大的数 : " + stats.getMax());System.out.println("列表中最小的数 : " + stats.getMin());

2024-12-25 09:46:00 1152

原创 33 - Java 8 默认方法

首先,之前的接口是个双刃剑,好处是面向抽象而不是面向具体编程, 缺陷是,当需要修改接口时候,需要修改全部实现该接口的类,目前的 java 8 之前的集合框架没有 foreach 方法, 通常能想到的解决办法是在JDK里给相关的接口添加新的方法及实现。然而,对于已经发布的版本,是没法在给接口添加新方法的同时不影响已有的实现。所以引进的默认方法,他们的目的是为了解决接口的修改与现有的实现不兼容的问题。简单说,默认方法就是接口可以有实现方法,而且不需要实现类去实现其方法。Java 8 新增了接口的默认方法。

2024-12-24 11:32:28 275

原创 32 - Java 8 函数式接口

Predicate 接口是一个函数式接口,它接受一个输入参数 T,返回一个布尔值结果。代表了一个作用于于两个同类型操作符的操作,并且返回了操作符同类型的结果。接受一个object类型和一个double类型的输入参数,无返回值。接受一个object类型和一个long类型的输入参数,无返回值。接受一个object类型和一个int类型的输入参数,无返回值。接受一个long类型输入,返回一个double类型结果。接受一个double类型输入,返回一个long类型结果。

2024-12-24 11:30:03 703

原创 31 - Java 8 方法引用

Java 8 新特性

2024-12-23 13:35:01 298

原创 30 - Java Lambda 表达式

lambda 表达式

2024-12-23 13:13:08 825

原创 24 - Java 异常处理

Java 异常 try catch throws throw

2024-12-23 10:35:28 1240

原创 23 - Java 注解

Java @Retention 注解 @Target 注解

2024-12-20 10:53:48 849

原创 22 - Java 网络编程

Java TCP UDP SOCKET URL

2024-12-18 11:45:02 916

原创 21 - Java IO 操作

Java IO 字符流 字节流

2024-12-17 11:29:06 1036

原创 SpringBoot 日志配置

配置日志级别(TRACE、DEBUG、INFO、WARN、ERROR、OFF),默认是 INFO 级别,格式为 logging.level.包名=级别,如:logging.level.root=DEBUG、logging.level.org.springframework=DEBUG。输出日志到文件,默认 10M 自动分割文件:logging.file=log.log、logging.path=d:/log.log。默认的日志格式为:时间 级别 PID —- [线程名] 日志类:日志内容。

2024-12-13 16:49:32 347

原创 HS电子 - Java 面试题

1、下列哪种是最佳防止SQL注入的方法使用存储过程。2、下列哪个算法是对称加密算法?AES‌。‌3、若需要开发一套负载均衡策略,采用设计模式比较合适。4、针对已经上线的接口,如果修改源码风险很大,则可以采用设计模式进行调整修改。5、下列不属于spring aop 通知类型的是Spring AOP 中的通知类型主要有以下几种:前置通知(Before advice):在目标方法调用之前执行的通知。后置通知(After returning advice):在目标方法成功执行后执行的通知。

2024-12-12 21:59:36 1493

原创 Apache Commons Utils 类库使用

Apache Commons Utils 提供了丰富的工具类,可以大大简化开发中的许多常见任务。在使用这些工具类时,请确保已添加相应的 Maven 依赖或 JAR 包到项目中。通过这些工具类,你可以更加高效地编写代码,减少重复劳动,提高代码的可读性和可维护性。

2024-12-12 14:03:11 811

原创 Spring 定时任务 @Scheduled 注解

‌cron‌:使用cron表达式定义任务的执行时间,cron表达式由6或7个字段组成,分别表示秒、分、时、日、月、星期(可选字段为年)。‌fixedDelay‌:表示任务执行完成后的固定延迟时间(以毫秒为单位),即从上一次任务执行结束到下一次任务开始执行的间隔时间。‌fixedRate‌:表示任务的固定执行频率(以毫秒为单位),即从上一次任务开始执行到下一次任务开始执行的间隔时间。示例:@Scheduled(fixedDelay = 5000) 表示任务执行完成后,延迟5秒再执行下一次任务。

2024-12-11 17:17:51 781

原创 Java Lombok @slf4j注解

SLF4J 只是一个日志门面(Facade),它需要一个具体的日志实现来真正记录日志。请确保你的项目中包含了一个具体的日志实现。Lombok 是一个用于简化 Java 代码编写的库,它通过注解的方式自动生成了一些样板代码,比如 getter/setter 方法、构造函数、字段,但是 Lombok 自动为我们生成了这个字段,并且我们可以直接使用它来记录日志。注解,Lombok 大大简化了日志记录的使用,使得代码更加简洁和易读。是 Lombok 提供的一个非常有用的注解,用于简化日志记录的使用。

2024-12-10 21:02:44 426

原创 Java Lombok @Data注解

虽然@Data注解能够显著减少代码量,提高开发效率,但在某些情况下可能会影响代码的可读性和维护性。例如,自动生成的代码可能难以理解其生成逻辑,尤其是在团队开发中,其他开发者可能不熟悉Lombok的使用,从而增加沟通成本。这段代码中,@Data注解应用于类上,自动生成getter、setter、toString、equals、hashCode和构造方法,无需手动编写这些方法。‌Lombok的@Data注解是一个非常强大的工具,能够自动生成类的常见方法,极大地简化了Java代码的编写和维护。

2024-12-10 21:01:02 773

原创 Spring @Aspect 注解

Aspect 是 Spring 框架中用于面向切面编程(AOP)的核心注解。它允许开发者定义横切关注点(cross-cutting concerns),这些关注点可以在不修改目标类代码的情况下,被模块化地应用到多个类和方法上。

2024-12-10 09:27:14 1305

原创 Spring @Around 注解

Around是 Spring AOP(面向切面编程)中的一个注解,它用于定义一个环绕通知(Around Advice)。环绕通知是 AOP 中最强大的一种通知类型,因为它能够在方法执行之前和之后都执行自定义的逻辑,并且可以控制方法是否继续执行或改变其返回值。@Around。

2024-12-09 13:14:25 1782

原创 Java @Retention详解

Retention是 Java 注解(Annotation)机制中的一个关键元注解(meta-annotation),它用于指定其他注解的保留策略。保留策略决定了注解在何时有效:是在源代码中、编译后的字节码文件中,还是在运行时通过反射机制可访问。@Retention。

2024-12-09 11:53:09 509

原创 Java 使用@Target和@Retention 自定义注解

是两个非常重要的元注解(meta-annotation),它们用于定义其他注解的行为和特性。如果你尝试将它应用于其他类型的元素(如类、字段等),编译器将会报错。注解只能被应用于方法上,并且在运行时可以通过反射机制读取其信息。注解用于指定一个注解可以应用的Java元素类型。注解用于指定注解的保留策略,即注解在何时有效。注解在运行时是有效的,并且可以通过反射机制读取其信息。枚举类型的数组,用于列出注解可以应用的所有元素类型。然后,在运行时,你可以通过反射获取。来定义注解的行为和特性。方法的注解,并读取其。

2024-12-09 11:49:55 292

原创 Java @Target

注解是 Java 注解机制中的一个关键组成部分,它用于定义其他注解可以应用的 Java 元素类型。,你可以精确地控制你的自定义注解能够放置在哪里,比如类、方法、字段、参数等位置。是一个枚举类型,它定义了 Java 程序中所有可能的程序元素类型。类型的数组,用于指定注解可以应用的 Java 元素类型。可以被应用于方法和类(包括接口、枚举等)上。注解自身带有一个名为。的元素,该元素是一个。

2024-12-09 11:41:54 313

原创 Docker + MySql

等待下载完成后,我们就可以在本地镜像列表里查到REPOSITORY为mysql,标签为5.6的镜像。查找Docker Hub上的mysql镜像:docker pull mysql。这里我们拉取官方的镜像,标签为5.6。

2024-12-08 21:22:45 184

原创 29 - Java Serializable 序列化

Java Serializable 序列化

2024-12-07 21:29:26 1071

原创 28 - Java File类

Java File类介绍

2024-12-06 20:42:37 379

原创 20 - Java 反射

Java 反射使用

2024-12-06 12:17:39 1192

原创 27 - Java Properties 类

Java Properties 类

2024-12-05 21:42:37 1475

原创 19 - Java 泛型

JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。编译时,检查添加元素的类型,提高了安全性。减少了类型转换次数,提高了效率。可以在类声明时通过一个标识表示类中某个属性的类型,或者是某个方法的返回值的类型,或者是参数类型。如果没有泛型,要实现不同类型的加法,每种类型都需要重载一个add方法;

2024-12-05 15:05:18 835

原创 18 - Java 线程

实现 Runnable 接口,继承 Thread 类,synchronized 关键字,lock,线程常用方法

2024-12-04 22:08:34 2514

原创 17 - Java 集合框架

所有的集合框架都包含如下内容接口:是代表集合的抽象数据类型。例如 Collection、List、Set、Map 等。之所以定义多个接口,是为了以不同的方式操作集合对象。实现(类):是集合接口的具体实现。从本质上讲,它们是可重复使用的数据结构,例如:ArrayList、LinkedList、HashSet、HashMap。算法:是实现集合接口的对象里的方法执行的一些有用的计算,例如:搜索和排序。这些算法被称为多态,那是因为相同的方法可以在相似的接口上有着不同的实现。JDK中集合相关。

2024-12-04 10:30:30 973

原创 16 - Java 数据结构简介

Java 提供了丰富的数据结构来处理和组织数据。Java 的 java.util 包中提供了许多这些数据结构的实现,可以根据需要选择合适的类。

2024-12-03 14:30:53 1046

原创 15 - Java 面向对象(高级)

修饰的类,就是抽象类。

2024-12-02 21:53:28 732

原创 14 - Java 面向对象(中级)

继承是面向对象三大特征之一,它允许创建分等级层次的类。继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。继承需要符合的关系是:is-a,父类更通用,子类更具体。多态是同一个行为具有多个不同表现形式或形态的能力。多态就是同一个接口,使用不同的实例而执行不同操作。多态性是对象多种表现形式的体现。

2024-12-01 21:56:24 883

原创 13 - Java 面向对象(初级)

类是抽象的,概念的,代表一类事物,比如人类,猫类.., 即它是数据类型。对象是具体的,实际的,代表一个具体事物,即是实例(某个类的实例对象)。类是对象的模板,对象是类的一个个体,对应一个实例。Java方法是语句的集合,它们在一起执行一个功能。方法是解决一类问题的步骤的有序组合方法包含于类或对象中方法在程序中被创建,在其他地方被引用一般情况下,定义一个方法包含以下语法:修饰符 返回值类型 方法名(参数类型 参数名){ ... 方法体 ... return 返回值;

2024-11-30 21:51:41 769

Java Spring 学习记录

学习 Spring 结合代码的运用

2024-12-10

MyBatis 学习代码

结合代码对 Mybatis 的使用

2024-12-10

空空如也

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

TA关注的人

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