关于Java如何正确地实现方法重载详解

目录一. 方法重载1. 概念2. 要求二. 代码案例1. 普通方法重载2. 构造方法重载三. 结语一. 方法重载1. 概念所谓方法的重(chong)载(重复出现),就是指在一个类中可以有多个名称...

2023-05-17

JavaWeb实现学生管理系统的超详细过程

目录一、项目介绍二、项目结构三、前期准备1.配置maven环境,在pom.xml配置文件中配置项目所依赖的jar包2.在MySql数据库中,创建登录注册表login和学生信息表student3.配置toca...

2023-05-17

关于SpringBoot的异常回滚和事务的使用详解

目录Springboot中事务的使用:开启事务的方法中事务回滚的情况:Springboot @Transactional 事务不回滚一、异常捕获的原因二、数据库引擎不支持回滚(使用MYSQL就很可能是这个原...

2023-05-17

Java关键字之this用法详解

目录一. this关键字1. 简介2. 作用二. 代码案例1. 代表当前类对象2. 调用类中的属性3. 调用类中的方法4. 调用类的构造方法三. 结语一. this关键字1. 简介我们知道,this是&rd...

2023-05-17

四个Java常见分布式锁的选型和性能对比

目录1. 基于数据库的分布式锁2. 基于缓存的分布式锁3. 基于ZooKeeper的分布式锁4. 基于Redis的分布式锁1. 基于数据库的分布式锁实现原理: 基于数据库的分布式锁使用数据库的...

2023-05-17

Java ScheduledExecutorService的具体使用

目录1. 延迟不循环任务schedule方法2. 延迟且循环cheduleAtFixedRate方法3. 严格按照一定时间间隔执行``ScheduledExecutorService有线程池的特性,也可以实现任务循环执行,可...

2023-05-17

SpringBoot项目速度提升之延迟初始化(Lazy Initialization)详解

目录前言是什么?有啥用?如何实现?全局懒加载注意的点总结前言在一个名为种花家的小镇上,生活着一群热爱编程的人。他们致力于构建出高效、可维护的软件系统,而 Spring Boot 框架...

2023-05-17

FastJSON的0day漏洞的解决

目录一、问题背景1.1、漏洞名称1.2、漏洞描述1.3、影响范围1.4、官方解决方案1.5、防护建议(1)Web应用防火墙(2)WAF自定义防护规则TAM关于fastjson javaweb框架0day漏洞回溯和实...

2023-05-17

Java 中限制方法的返回时间最新方法

最近在研究 ChatGPT 的 API 调用。因为 ChatGPT 的 API 调用时间通常超过 30 秒。所以我们希望在程序中限制这个方法的执行时间,不要让方法花太长时间去执行了。JDK 方法可以...

2023-05-17

关于Spring中@Transactional事务回滚的注意事项

目录一、Spring 默认事务1.1、抛出 unchecked 和 checked 异常都回滚1.2、总结二、使用 Spring中 @Transactional 注解的注意事项一、Spring 默认事务Spring中 @Transaction...

2023-05-17

一分钟掌握Java ElasticJob分布式定时任务

目录前言架构功能和特性入门角色写个例子任务执行流程ScheduleJobBootstrap初始化ScheduleJobBootstrap执行执行流程总结分片的策略前言ElasticJob 是面向互联网生态和海量...

2023-05-17

Java并发编程ReentrantReadWriteLock加读锁流程

目录正文属性介绍加锁成功处理正文protected final int tryAcquireShared(int unused) { Thread current = Thread.currentThread(); int c = getState(); if (exc...

2023-05-17

Java Socket 编程详解

目录一、Socket 基础知识1.1 Socket 概述1.2 Socket 通信模型1.3 Socket 编程流程二、Java Socket 编程实现2.1 创建 Socket 对象2.2 绑定 Socket 地址2.3 启动监听进程或连...

2023-05-17

使用Java操作TensorFlow的方法

目录简介TensorFlow为何物?张量与操作安装TensorFlowTensorFlow的JavaAPI类枚举接口异常图(Graphs)常量占位符函数图形可视化会话(Sessions)Java当中加载Python中Saving模块...

2023-05-17

Java JSON处理库之Gson的用法详解

目录引言Gson的基本功能1. 将Java对象转换为JSON字符串(序列化)2. 将JSON字符串转换为Java对象(反序列化)使用Gson的基本步骤1. 添加依赖2. 创建Java对象模型3. 使用Gson进行序...

2023-05-17

详解Java如何在Array和List之间进行转换

目录概述从 List 转换为 Array使用原生 Java 代码使用 Guava把 Array 转换为 List使用原生 Java使用 Guava使用 Commons 集合结论概述在本文章中,我们对如何在 Java 中对 Arr...

2023-05-17

关于@DS注解切换数据源失败的原因实战记录

目录项目场景:问题排查过程第一个问题,数据源没有载入第二个问题,@DS注解切换数据源无效总结项目场景:一位好友在陈年老代码中想要加入mybatis-plus和boumidou的多数据源来轻松...

2023-05-17

Java获取登录用户的IP地址示例代码

示例代码如下package com.audaque.util; import java.net.InetAddress;import java.net.UnknownHostException; import javax.servlet.http.HttpServletRequest; public cla...

2023-05-17

学习Java之如何正确地向上转型与向下转型

目录一. 类型转型二. 向上转型1. 概念2. 特点3. 语法4. 案例三. 向下转型1. 概念2. 特点3. 语法4. 案例四. 结语一. 类型转型将一个类型转换成另一个类型的过程被称为类型转...

2023-05-17

Java如何利用递归计算出阶乘

目录一. 递归1. 简介2. 使用场景3. 特点4. 基本用法5. 三大要素6. 代码案例6.1 计算阶乘6.2 输出数字中每一位上的值二. 结语一. 递归1. 简介所谓的递归,其实是一种解决问题...

2023-05-17

Java算法比赛常用方法实例总结

1. 开方:Math.sqrt(x);2. x的a方:Math.pow(x,a);3. 绝对值:Math.abs(x);4. BigInteger:大数(加,减,乘,除,取余)c.add(d) ; c.subtract(d);c.multiply(d);c.divide(d);c.mod(d)5. 判断回文:p...

2023-05-17

使用Java桥接模式打破继承束缚优雅实现多维度变化

目录一、导言1.1 介绍桥接模式及其应用背景1.2 提出文章的主要目的和内容概述二、设计原则和模式分析1.1 讲解面向接口编程和实现分离的设计原则2.2 探讨桥接模式的工作原理...

2023-05-17

全面详解Maven打包及其相关插件和高级特性

目录正文1. Maven打包相关插件1.1 maven-jar-plugin1.2 maven-shade-plugin1.3 spring-boot-maven-plugin2. Maven构建的高级特性2.1 使用profiles2.2 profiles的传递性2.3...

2023-05-17

maven依赖传递和依赖冲突原理

目录正文1. 依赖传递原理1.1 传递范围1.2 依赖传递的优势2. 依赖冲突2.1 依赖冲突的表现2.2 产生原因3. 解决依赖冲突的办法3.1 依赖调解原则3.2 显示声明依赖3.3 使用depen...

2023-05-17

一文带你吃透Java中的String类

目录一、String类的概述二、String类的构造函数三、String类的常用方法3.1、字符串拼接3.2、字符串截取3.3、字符串替换3.4、字符串分割3.5、大小写转换3.6、字符串比较四、...

2023-05-17

关于Java的动态代理机制

目录静态代理功能接口功能提供者功能代理者探索动态代理实现机制静态代理常规的代理模式有以下三个部分组成:功能接口interface IFunction { void doAThing();}功能提供者cla...

2023-05-17

Java多线程Semaphore工具的使用详解

目录Semaphore 是一种用于控制线程并发访问数的同步工具。它通过维护一定数量的许可证来限制对共享资源的访问。 许可证的数量就是可以同时访问共享资源的线程数目。当一个...

2023-05-17

详解Spring的@Value作用与使用场景

目录1 简介2 三种形式3 使用场景4 引入配置文件5 使用举例1 简介不得不说,Spring为大家提供许多开箱即用的功能,@Value就是一个极其常用的功能,它能将配置信息注入到bean中去。...

2023-05-17

Java使用Sa-Token框架完成踢人下线功能

目录一、需求二、踢人下线 API 一览三、根据账号踢人下线四、根据 Token 踢人下线参考资料一、需求在企业级项目中,踢人下线是一个很常见的需求,如果要设计比较完善的话,至少需...

2023-05-17

关于Java中@SuppressWarnings的正确使用方法

目录@SuppressWarnings比较常见,理解和使用起来都很简单。通过源码可以看出,支持在类、属性、方法、参数、构造方法、本地变量上使用。@SuppressWarnings注解的使用有三种:@Sup...

2023-05-17

MyBatis-Plus自定义通用的方法实现

目录一、引言二、自定义方法实现一、引言大家已知MP给大家提供了很多通用的方法,可以看看MP源码中DefaultSqlInjector这个类,在这个集合当中包含了都是通用方法类,如果想要使用...

2023-05-17

java中断线程的正确姿势完整示例

目录Java停止线程的逻辑(协同、通知)Sleep是否会收到线程中断信号解决方法总结Java停止线程的逻辑(协同、通知)在Java程序中,我们想要停止一个线程可以通过interrupt方法进行停止...

2023-05-17

Java for循环标签跳转到指定位置的示例详解

Java for循环标签跳转到指定位置大家是否见过这种for循环,在for循环前加了个标记的:outerLoop:for (; ; ) { for (; ; ) { break outerLoop; }}我之前有一次在公...

2023-05-17

关于MVC与SpringMVC的介绍、区别、执行流程

目录介绍区别两者执行流程MVC执行流程:Spring MVC执行流程:介绍MVC(Model-View-Controller)是一种软件架构模式,其中应用程序被划分为三个部分:模型(Model)、视图(View)和控制器(Contro...

2023-05-17

GsonFormat快速生成JSon实体类的实现

IntelliJ IDEA 个人觉得是目前最好最强最智能的Java IDE,默认已经集成了几乎所有主流的开发工具和框架。1、常用工具支持Java日常开发需要接触到很多常用的工具,为了便于使用,...

2023-05-17

教你如何在 javadoc 输出<> 符号

在 javadoc 输出 <> 两个符号,但直接使用会提示:错误: '<' 的用法错误错误: '>' 的用法错误问题和解决原因是因为javadoc 把其当成了 html 标签了。可以使用下面的转义符。< -...

2023-05-17

深入探究如何使用Java编写MapReduce程序

目录MapReduce的原理Map阶段Reduce阶段Shuffle阶段MapReduce程序实现总结MapReduce的原理MapReduce由两个主要阶段组成:Map和Reduce。在Map阶段中,数据集被分成若干个小块,每个...

2023-05-17

Java定时任务schedule和scheduleAtFixedRate的异同

一、使用相同点任务执行未超时,则下次执行时间 = 上次执行开始时间 + period任务执行超时,则下次执行时间 = 上次执行结束时间不同点schedule在错过以后会按照自己的节奏继续...

2023-05-17

Java NIO中四大核心组件的使用详解

目录一、基础概念1.1 IO和NIO的区别1.2 缓冲区1.3 通道1.4 选择器和选择键二、核心组件2.1 Channel2.2 Buffer2.3 Selector三. 总结Java NIO(New IO)是Java 1.4版本中引入的一...

2023-05-17

java 工作流引擎设计实现解析流程定义文件

目录引言类图流程图代码实现LogicFlow模型对象解析类服务上下文相关类解析入口类配置类单元测试类运行结果引言在上一篇我们手动构建了一个流程对象并简单打印执行,其构建流...

2023-05-17

Lombok 的@StandardException注解解析

目录1. 引言2. 什么是 @StandardException?2.1. 添加 Lombok 依赖2.2. 使用类注解3. 优点4. 缺点5. 结论1. 引言在 Java 应用程序中,异常类对于正确捕获和处理错误至关重要。...

2023-05-17

Mybatis拦截器实现自定义需求

目录前言一、应用场景二、Mybatis实现自定义拦截器2.1、编写拦截器2.2、添加到Mybatis配置2.3、测试2.4、小结三、拦截器接口介绍intercept 方法plugin方法setProperties方...

2023-05-17

MyBatis实现配置加载的步骤

目录前言正文总结前言在原始MyBatis的使用中,使用MyBatis时会先读取配置文件mybatis-config.xml为字符流或者字节流,然后通过SqlSessionFactoryBuilder基于配置文件的字符流或...

2023-05-17

高效数据传输的秘密武器Protobuf的使用教程

目录Protobuf 介绍编写 Protobuf头部全局定义消息结构具体定义字段类型定义编译 Protobuf使用 Protobuf构造消息对象序列化、反序列化Protobuf 为什么高效序列化大小对比序...

2023-05-17

Java外观模式解读,让你的代码优雅又高效

目录一、引言1.1 简介1.2 设计模式的概念二、外观模式的基础知识2.1 什么是外观模式2.2 外观模式的核心概念2.3 外观模式的角色及职责三、外观模式的实现方法3.1 外观模式的...

2023-05-17

Java编写Mapreduce程序过程浅析

目录Maven项目下所需依赖数据类型一、Mapper类二、Reducer类三、执行类程序执行结果一个Maprduce程序主要包括三部分:Mapper类、Reducer类、执行类。Maven项目下所需依赖<dep...

2023-05-17

Spring Boot应用程序中如何使用Keycloak详解

目录正文什么是Keycloak?我们为什么要使用Keycloak?在Spring Boot 应用程序中使用keycloak安装Keycloak添加应用程序添加用户创建 Spring Boot 应用程序有没有使用Spring-Secu...

2023-05-17

关于Mysql的四种存储引擎

目录前言存储引擎查看InnoDB存储引擎MyISAM存储引擎MEMORY存储引擎存储引擎的选择前言数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、...

2023-05-17

Java设置String字符串编码方法详解

目录一. 字符编码1. 编码简介2. 常用编码2.1 ASCII编码2.2 GB2312编码2.3 Big5编码2.4 Unicode编码2.5 UTF-8编码2.6 GBK编码二. String编码设置1. 概述2. 转换编码三. 结语...

2023-05-17

SpringBoot结合JWT实现用户登录、注册、鉴权

目录一、用户注册与登录二、用户鉴权用户登录、注册及鉴权是我们基本所有系统必备的,也是很核心重要的一块,这一块的安全性等都比较重要,实现的方案其实也有几种,从以前的cookie...

2023-05-17
返回顶部
顶部