自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 泛型和通配符

泛型T是一种类型参数,用于在类或方法的声明中表示一种具体的类型,可以在编译时进行类型检查。通配符?是一种通用的符号,用于声明时或方法参数中,表示任意未知类型,通常与泛型类或方法一起使用,用于增加代码的灵活性。选择使用泛型T还是通配符?取决于具体的需求和语境,通常来说,如果需要在类或方法内部使用该类型进行一些具体操作,应该选择泛型T;而如果只需要接受或返回某种类型而不关心具体类型的操作,则可以使用通配符?。

2024-07-12 16:35:10 331

原创 处理线程安全的列表CopyOnWriteArrayList 和Collections.synchronizedList

是 Java 中的一种异常,用于指示在迭代集合时,该集合的结构发生了并发修改。在 Java 中,许多集合类(如ArrayListHashMap等)都不是线程安全的。如果一个线程在迭代集合的同时,另一个线程修改了该集合的结构(如添加、删除元素),就可能导致异常的抛出。这种异常通常在使用迭代器遍历集合时发生,迭代器在创建时会记录集合的结构状态,如果在迭代期间发现集合结构已经发生了变化,就会抛出。和都是 Java 中用于处理线程安全的列表操作的工具类,但它们在实现和适用场景上有一些区别。

2024-07-12 11:36:06 1082

原创 不遵守全局主键配置【PGSQL】

这个标签用于在执行插入操作之前获取一个值,通常是数据库中的序列(sequence)的下一个值,然后将其作为插入操作的主键值(id)使用。标签的作用就是在执行插入操作之前,先执行一个 SQL 查询语句,从数据库序列中获取下一个值,并将其作为插入操作的主键值。: 这是实际执行的 SQL 查询语句,它是 PostgreSQL 数据库中用来获取序列下一个值的语法。查询语句的执行顺序,即在执行插入操作之前执行该查询,确保能在插入时获取到正确的主键值。是将字符串转换为实际的数据库对象类型(在这里是序列类型)。

2024-07-12 09:51:38 439

原创 函数式接口

函数式接口(Functional Interface)是Java 8中引入的一个新概念,它指的是只有一个抽象方法的接口。这种接口可以被隐式地转换成Lambda表达式或方法引用。由于这种接口通常代表一个单一的动作或行为,所以它们非常适合用于实现简洁的代码块,特别是在使用流(Stream)或其他函数式编程结构时。,尽管它还包含了一个默认方法和一个静态方法。是一个函数式接口,因为它只有一个抽象方法。

2024-07-05 17:00:53 334

原创 Spring有哪些依赖注入方式(注意目标类已经在IOC容器中存在)

总结起来,Spring框架通过构造器注入、设值注入和字段注入提供了多种灵活的依赖注入方式,开发人员可以根据具体情况选择合适的方式来管理和注入Bean之间的依赖关系,从而实现松耦合、可测试和可维护的代码。这种方式通常用于强制依赖注入,即目标类必须在创建时提供所需依赖项。设值注入通过目标类的setter方法来注入依赖项。这种方式简单明了,但可能会影响类的可测试性和封装性,因为依赖关系在类的内部并不明显。这种方式通过实现目标类的接口来进行注入。字段注入直接通过Java反射机制或者类的反射调用来注入依赖项。

2024-06-25 09:04:53 428

原创 SpringBoot中获取当前请求的request和response

以上是在Spring Boot中常见的几种方式获取当前请求的HttpServletRequest和HttpServletResponse对象。推荐使用第一种方式,即在方法参数中声明,因为它简单直观且符合Spring Boot的最佳实践。

2024-06-14 15:22:37 477

原创 having和where的区别,join和不用join的多表查询有什么不同,举出例子详细说明

的情况下,您可能会通过子查询、联合查询或其他方式手动组合数据。这种方法可能会导致更复杂的查询,难以理解和维护。表包含订单信息,我们想要找出每个客户的订单总金额大于 100 的客户。子句允许我们基于分组的条件进行筛选,即订单总金额大于 100。用于将两个或多个表的行连接起来,基于连接条件检索相关的数据。表包含订单信息,我们想要检索每个客户及其订单的信息。子句中指定连接条件来清晰地检索客户和订单的相关信息。提供了更清晰、更可维护的方式来检索多个表的数据。的多表查询之间有一些区别。对客户进行分组,然后使用。

2024-05-14 16:43:27 249

原创 Java编译时类型和运行时类型

理解编译时类型和运行时类型的区别对于掌握Java中的类型转换、方法重载和多态等概念非常重要。在编写代码时,要注意确保类型安全,避免在运行时出现类型转换错误或其他类型相关的问题。

2024-05-08 16:47:38 383

原创 Java数组和集合有什么区别,各初始化的时候是怎么写的,有哪些方法,请举出java例子详细说明

Java数组:适用于需要固定大小、快速索引访问和存储原始数据类型的场景。Java集合(如List):适用于需要动态大小、迭代访问和存储对象的场景。在初始化时,数组可以直接通过大括号{}进行静态初始化,或者通过new关键字和索引进行动态初始化。而集合则需要先创建集合的实例(如ArrayList),然后使用add方法添加元素,或者使用Java 8的流API进行初始化。选择使用数组还是集合取决于你的具体需求。如果你需要存储固定数量的元素,并且需要快速访问这些元素,那么数组可能是更好的选择。

2024-04-26 16:21:22 291 3

原创 数据量大时,分批次保存或更新

中的元素按照指定大小分批保存或更新到数据库中,同时利用并行流提高处理效率,并在保存或更新过程中处理可能出现的异常。如果在保存或更新过程中出现异常,会捕获异常并记录错误日志,然后程序会继续处理下一个批次的数据。这是一个初始值为0的迭代,每次递增1的无限流。的大小大于等于500,则需要将列表切分为多个批次进行保存或更新。中跳过一定数量元素后取出的一批元素,然后这些元素被并行收集到一个列表中。来指定每个批次的大小,然后将切分得到的每个批次收集到一个列表。操作将流转换为并行流,允许并行处理流中的元素。

2024-04-10 09:45:43 464

原创 mybatisPlus返回结果集为空时,用Map接收返回什么,用单个对象接收返回什么,用List集合返回什么,用Page对象呢?

当使用 `Page` 对象作为返回类型时,如果查询结果集为空,MyBatis-Plus 会返回一个 `Page` 对象,该对象的 `records` 属性(即结果集)将是一个空的 `List`。即使结果集为空,`Page` 对象本身也不会是 `null`。当使用 `Map` 作为返回类型时,如果查询结果集为空,MyBatis-Plus 通常会返回一个空的 `Map`,而不是 `null`。当使用 `List` 集合作为返回类型时,如果查询结果集为空,MyBatis-Plus 会返回一个空的 `List`。

2024-04-08 13:48:17 508 1

原创 后台守护进程

2. **监视系统状态**:后台守护进程的主要功能之一是监视系统状态。3. **执行任务或提供服务**:后台守护进程可以执行各种任务或提供服务。它们通常在系统启动时启动,并一直运行在后台,不需要用户交互,持续监视系统状态,并在需要时执行特定的任务或提供服务。1. **后台运行**:后台守护进程在系统启动时启动,并持续在后台运行,不会占用用户界面或终端。总的来说,后台守护进程在计算机系统中扮演着重要的角色,通过持续监视系统状态并执行特定任务或提供服务,帮助确保系统的正常运行并提供所需的功能。

2024-03-26 15:02:26 168

原创 行政区划懒加载是什么意思,有什么作用?

2. **优化服务器资源**:减少不必要的请求可以降低服务器的压力,对于需要大量数据的应用,可以提高整体的性能。总的来说,懒加载是一种常用的优化手段,可以帮助开发者更好地管理和优化他们的web应用。**行政区划懒加载是指**,在web应用中,当用户滚动页面时,只加载当前可视区域的行政区划数据,以减轻服务器负担,提高应用性能。1. **提高用户体验**:通过只加载当前用户需要的数据,可以显著减少网络请求,避免页面加载过慢导致用户体验下降。

2024-03-20 13:43:42 277

原创 怎么用vi查看linux日志关键字,请详细说明,vim呢

1. 打开终端,输入命令 `vi /path/to/logfile`,其中`/path/to/logfile`是你要查看的日志文件的路径。例如,如果要查看`/var/log/syslog`文件,可以输入`vi /var/log/syslog`。1. 打开终端,输入命令 `vim /path/to/logfile`,其中`/path/to/logfile`是你要查看的日志文件的路径。2. 进入命令模式。例如,如果要搜索关键字“error”,可以输入`/`,然后输入“error”,按下回车键。

2024-03-20 10:11:52 686

原创 Request 获取请求头、请求体、请求参数

【代码】Request 获取请求头、请求体、请求参数。

2024-03-06 09:02:45 603

原创 @Transactional(rollbackFor = Exception.class)和 @Transactional有什么区别,请详细说明。

在这个例子中,通过调用 methodA 和 methodB 方法来说明 @Transactional 和 @Transactional(rollbackFor = Exception.class) 之间的区别。根据注解的不同配置,可以看到 methodA 只有在抛出 RuntimeException 异常时才会回滚事务,而 methodB 则无论抛出何种异常都会回滚事务。这意味着只有当在 methodA 中抛出 RuntimeException 或 Error 异常时,事务才会回滚。

2024-03-04 16:47:37 429

原创 lombok 基础注解之 @Builder,是什么意思,实际工作中是怎么用的,请举出对应场景和示例,并详细说明。

是 Lombok 库中 @Builder 注解的一个选项,用于指定某些字段的默认值。通过使用 @Builder.Default,我们可以为 Builder 中的某些字段设置默认值,而不需要在每次调用 Builder 方法时都指定这些值。通过 @Builder,我们可以自动为类中的每个公共构造函数生成一个构建器方法,这样就可以通过这些方法来创建类的实例。同时,这也减少了代码的冗余,提高了代码的可读性和可维护性。现在,我们可以使用 Car 的 Builder 来创建 Car 对象,并自动应用默认值。

2024-02-01 14:54:01 330 1

原创 pgsql substr() 函数

函数基于 1 的起始位置进行索引,而不是像大多数编程语言中那样从 0 开始。函数是 PostgreSQL 中用于提取子字符串的函数。假设有一个字符串 “Hello World!,因为我们从索引 1 的位置开始提取长度为 5 的子字符串。,因为我们从索引 7 的位置开始提取到字符串的末尾。

2024-01-10 09:30:05 2408 1

原创 Java中ArrayList之clear()方法的功能说明,及其使用场景

在Java中,ArrayList是一个动态数组,它允许你存储和操作对象列表。clear()是ArrayList类的一个方法,用于移除列表中的所有元素。

2024-01-04 15:36:06 997 1

原创 RestTemplate

使用RestTemplate发送请求时,服务端的具体位置取决于您请求的URL。如果您请求的是一个远程服务器上的服务,那么服务端就在远程服务器上。如果您请求的是本地服务器上的服务,那么服务端就在本地服务器上。RestTemplate是Spring框架提供的一个用于发送HTTP请求的类,它允许您以简单的方式向远程服务器发送请求并获取响应。

2023-12-25 15:01:45 378

原创 PGSQL片段

最终,这个 SQL 语句将计算 epidemic_area 列的总和,并将结果四舍五入为两位小数,如果结果为 NULL,则返回 0,并将结果赋值给别名 epidemicArea。这是一个针对 PGSQL 数据库的 SQL 查询语句,它包含了三个函数:ROUND、COALESCE 和 SUM,并将结果赋值给一个别名为 epidemicArea 的结果列。- 这是一个条件函数 COALESCE,如果 SUM 的结果为 NULL,则返回第二个参数,即 0。- ROUND 函数通常用于格式化数值结果。

2023-12-18 13:24:57 327

原创 PGSQL统计常用

可以使用COALESCE函数将NULL值替换为0。COALESCE函数接受多个参数,返回第一个非NULL参数。这将返回一个包含test表中所有number字段的值的结果集,如果字段为NULL,则将其替换为0。

2023-11-27 11:36:03 410

原创 根据日期排序MYSQL

是一种变量赋值语法,用于将一个值赋给一个用户定义的变量。该语法的含义是将右侧的表达式的结果赋给左侧的变量。语法允许使用任意的变量名。赋值后,该变量可以在当前会话中使用。符号作为用户定义的变量的前缀,以与列名或其他标识符区分开来。是赋值操作符,用于将右侧的值赋给左侧的变量。表示将右侧的表达式的值赋给名为。之后,您可以在查询中使用。,您可以在查询中使用该变量的值。以下是一个示例,展示了如何使用。是一个用户自定义的变量名,这个例子将当前的日期赋值给。请注意,MySQL 中使用。

2023-11-20 09:30:49 213

原创 MYSQL根据月份统计数量

【代码】根据月份统计数量。

2023-11-17 13:37:51 242

原创 数据量大时,采用stream流进行分批操作

数据量大时采用Stream流操作进行分批操作

2023-08-10 14:55:27 400 1

原创 Maven仓库

【代码】Maven仓库。

2023-05-23 09:26:26 49

原创 属性条件查询DTO

属性条件查询DTO。

2023-04-25 10:03:18 136

原创 火险气象等级预报

项目实践

2023-04-24 11:31:42 76

原创 Java基础面试3

一、http和https的区别?二、cookie和session区别?三、什么是javabean及其用法?

2023-04-24 11:12:48 27

原创 SpringBoot项目笔记

springboot知识小记

2023-03-06 16:28:53 34

原创 MySQL常见sql语句用法笔记

MYSQL常用sql语句用法笔记

2023-02-11 23:14:13 92

原创 Java基础面试2

Java开发面试必看

2023-02-04 23:37:42 94

原创 Java面试基础1

Java基础面试题(面试小白必看)

2023-02-03 17:26:03 105

原创 事务相关知识

事务介绍

2022-06-23 16:09:41 287 1

原创 Linux安装启动Redis

#make进行编译[liangjiaojiao@hadoop100 redis-6.2.1]$ make一、错误1#执行命令完成安装make MALLOC=libc二、错误步骤:1.cd 到redis文件中的src目录 2.chmod+x mkreleasehdr.sh 3.make三、编译成功四、安装make install五、验证 【默认安装在/usr/local/bin】...

2022-05-12 21:35:31 406 1

空空如也

空空如也

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

TA关注的人

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