java类初始化及代码块加载顺序连根拔起

说明相信很多人对于java中父子继承关系中,子类实例化调用过程中,代码块的执行顺序都容易忘记或搞混,尤其是java初级笔试题或面试题最容易出这类题目,让人恨得牙痒痒!!!本文就一次性...

2024-02-27

Java面向对象之接口和抽象类的区别一目了然

介绍相信对于Java面向对象部分,很多人很长一段时间对于接口和抽象类的区别,使用场景都不是很熟悉,同是作为抽象层重要的对象,工作中到底什么情况下使用抽象类,不是很清楚。本文就...

2024-02-27

Spring Security权限控制框架使用指南

在常用的后台管理系统中,通常都会有访问权限控制的需求,用于限制不同人员对于接口的访问能力,如果用户不具备指定的权限,则不能访问某些接口。本文将用 waynboot-mall 项目举例...

2024-02-27

解析Spring中的循环依赖问题:初探三级缓存

什么是循环依赖?这个情况很简单,即A对象依赖B对象,同时B对象也依赖A对象,让我们来简单看一下。// A依赖了Bclass A{ public B b;}// B依赖了Aclass B{ public A a;}这种循环依赖...

2024-02-27

从零开始学Spring Boot系列-Hello World

欢迎来到从零开始学Spring Boot的旅程!在这个系列的第二篇文章中,我们将从一个非常基础但重要的示例开始:创建一个简单的Spring Boot应用程序,并输出“Hello World”...

2024-02-26

教你如何判断Java代码中异步操作是否完成

本文分享自华为云社区《java代码实现异步返回结果如何判断异步执行完成》,作者: 皮牙子抓饭。在许多应用程序中,我们经常使用异步操作来提高性能和响应度。在Java中,我们可以使...

2024-02-26

玩转SpringBoot:动态排除Starter配置,轻松部署

引言在软件开发中,进行本地单元测试是一项常规且必要的任务。然而,在进行单元测试时,有时需要启动一些中间件服务,如Kafka、Elasticjob等。举例来说,我曾经遇到过一个问题:项目中...

2024-02-25

【libGDX】使用Mesh绘制三角形

1 Mesh 和 ShaderProgram 简介1.1 创建 Mesh​ 1)Mesh 的构造方法public Mesh(boolean isStatic, int maxVertices, int maxIndices, VertexAttribute... attributes)public...

2024-02-25

java面向对象之封装-抽象-继承-组合-多态五种概念一网打尽

说明曾经在学习java面向对象时,你是否会为面向对象的封装-继承-抽象-多态-组合等各种概念搞得稀里糊涂,乃至反复阅读,背诵其相关概念,结果一段时间过后又还给了时间。。。
这种...

2024-02-25

原来你是这样的JAVA--[07]聊聊Integer和BigDecimal

今天来聊聊Java中跟数值处理相关的两个类型Integer和BigDecimal。 说起这两个类型,我们肯定都不陌生,但是其中有些容易踩到的坑需要注意避让。Integer整型我们应该每天都会用...

2024-02-25

责任链模式与spring容器的搭配应用

背景有个需求,原先只涉及到一种A情况设备的筛选,每次筛选会经过多个流程,比如先a功能,a功能通过再筛选b功能,然后再筛选c功能,以此类推。现在新增了另外一种B情况的筛选,B情况同样...

2024-02-22

Java里使用AspectJ实现AOP

已经正式从NET转型JAVA。今后开始多写一点JAVA相关的文章。因为已经正式转Java了,所以,对于Java的一些判断,应该就比以前更准确了。总得来说,java有好的东西,有不好的东西,就语言...

2024-02-22

什么是Java内存模型?

当问到 Java 内存模型的时候,一定要注意,Java 内存模型(Java Memory Model,JMM)它和 JVM 内存布局(JVM 运行时数据区域)是不一样的,它们是两个完全不同的概念。1.为什么要有 Java 内...

2024-02-22

解密JavaChassis3:易扩展的多种注册中心支持

本文分享自华为云社区《JavaChassis3技术解密:易扩展的多种注册中心支持》,作者:liubao68。Java Chassis 的早期版本依赖于 Service Center,提供了很多差异化的竞争力: 接口级别...

2024-02-07

Java锁到底是个什么东西

一、java锁存在的必要性要认识java锁,就必须对2个前置概念有一个深刻的理解:多线程和共享资源。对于程序来说,数据就是资源。在单个线程操作数据时,或快或慢不存在什么问题,一个...

2024-02-07

盘点Java集合(容器)概览,Collection和Map在开发中谁用的最多?

写在开头在Java的世界里万物皆对象。但我认为是万物皆数据,世界由各种各样数据构建起来,我们通过程序去实现数据的增删改查、转入转出、加减乘除等等,不同语言的实现方式殊途同...

2024-02-07

由反射引出的Java动态代理与静态代理

写在开头在《深入剖析Java中的反射,由浅入深,层层剥离!》这篇文章中我们讲反射时,曾提到过Java的动态代理中使用了反射技术,那么好,今天我们要就着反射的索引,来学习一下Java中的代...

2024-02-03

spring声明式事务(@Transactional)开发常犯的几个错误及解决办法

目前JAVA的微服务项目基本都是SSM结构(即:springCloud +springMVC+Mybatis),而其中Mybatis事务的管理也是交由spring来管理,大部份都是使用声明式事务(@Transactional)来进行事务一...

2024-02-03

Java浅谈BufferedReader

既然Scanner简单好用,为什么要用BufferedReader呢?主要原因是面对大量的读入显得较慢且不安全,这里体现在三个方面,一方面是解析的问题,好用意味着封装的更复杂,一拖n的接口解析起...

2024-02-03

深入剖析Java中的反射,由浅入深,层层剥离!

写在开头之前更新了不少Java的基础知识,比如Java的类、对象、基础类型、关键字、序列化、泛型、值传递等等,今天要上点深度了,来聊一聊Java中的 反射 !所谓反射,就是在运行时分...

2024-02-02

每日一道Java面试题:说一说Java中的异常

写在开头任何一个程序都无法保证100%的正常运行,程序发生故障的场景,我们称之为:异常,在Java中对于异常的处理有一套完善的体系,今天我们就来一起学习一下。
老样子,用一段简单的...

2024-02-02

Spring Cloud Config核心功能和原理解析

配置管理的前世今生随着技术的发展,配置项管理变得越来越简单,尽管如今它只限于管理业务属性或者配置初始化参数等等,但是当年它可肩负着 Spring IOC 的光荣使命,风光无限。想当...

2024-02-02

Java系列:Java8 新特性:强大的 Stream API(创建 Stream、中间操作、终止操作)

Java8中有两大最为重要的改变。第一个是 Lambda 表达式;另外一个则是 Stream API。 Stream API ( java.util.stream) 把真正的函数式编程风格引入到Java中。这是目前为止对J...

2024-01-30

Spring系列:Spring6简介和基本使用

一、概述1.1 特点Spring 是一款主流的 Java EE 轻量级开源框架 ,Spring 由“Spring 之父”Rod Johnson 提出并创立,其目的是用于简化 Java 企业级应用的开发难度和...

2024-01-30

Spring系列:基于XML的方式构建IOC

目录 一、搭建模块spring6-ioc-xml 二、获取bean的三种方式 三、基于setter注入 四、基于构造器注入 五、特殊值处理 六、为对象类型属性赋值 七、引入外部属性文件 八、基...

2024-01-30

Spring系列:基于注解的方式构建IOC

目录 一、搭建子模块spring6-ioc-annotation 二、添加配置类 三、使用注解定义 Bean 四、@Autowired注入 五、@Resource注入 六、全部代码从 Java 5 开始,Java 增加了对注解(A...

2024-01-30

Spring Cloud Seata 系列:Seata-Server (1.7.1)安装与配置(集成 Nacos)

目录 一、简介 术语 事务模式 XA 模式 AT 模式 TCC 模式 Sage 模式 说明 二、Seata Server 存储模式 1、file 模式 ①修改application.xml ②启动...

2024-01-30

Spring Cloud Seata系列:基于AT模式实现分布式事务

目录 前提 Seata的AT模型 流程梳理 一阶段: 二阶段-回滚 二阶段-提交 脏写问题 写隔离 读隔离 优缺点 AT与XA的区别 实现AT模式
https://seata.io/zh-cn/docs/de...

2024-01-30

Spring系列:基于Spring-AOP和Spring-Aspects实现AOP切面编程

目录 一、概念及相关术语 概念 相关术语 ①横切关注点 ②通知(增强) ③切面 ④目标 ⑤代理 ⑥连接点 ⑦切入点 作用 二、基于注解的A...

2024-01-30

Spring系列:基于Spring-Jdbc实现事务

目录 一、事务基本概念 二、编程式事务 三、声明式事务 前期准备 四、基于注解的声明式事务 @Transactional注解标识的位置 事务属性:只读 事务属性:超时 事务属性:回...

2024-01-30

Spring Boot3 系列:Spring Boot3 跨域配置 Cors

目录 什么是CORS? Spring Boot 如何配置CORS? 前端代码 注解配置 全局配置 过滤器配置 注意事项 什么是CORS?CORS,全称是“跨源资源共享”(Cross-Origin Resour...

2024-01-30

MyBatis 系列:MyBatis 源码环境搭建

目录 一、环境准备 二、下载 MyBatis 源码和 MyBatis-Parent 源码 三、创建空项目、导入项目 四、编译 mybatis-parent 五、编译 mybatis 六、测试 总结 一、环境准备jdk:17m...

2024-01-30

Servlet系列:生命周期(init、 service、destroy)详解

Servlet的生命周期是由Web容器(如Tomcat)管理的,包括以下三个阶段: 加载和实例化:当Web应用程序启动时,Web容器会加载和实例化Servlet。加载和实例化过程可以在应用程序启动时自动...

2024-01-30

Spring Cloud 系列:Seata 中TCC模式具体实现

概述https://seata.io/zh-cn/docs/dev/mode/tcc-modehttps://seata.io/zh-cn/docs/user/mode/tccTCC模式与AT模式非常相似,每阶段都是独立事务,不同的是TCC通过人工编码来实现...

2024-01-30

MyBatis 源码系列:MyBatis 体系结构、六大解析器

体系结构MyBatis是一个持久层框架,其体系结构分为三层:基础支持层、核心处理层和接口层。基础支持层包括数据源模块、事务管理模块、缓存模块、Binding模块、反射模块、类型转...

2024-01-30

Spring Cloud系列: OpenFeign 简介和使用以及对比 Feign

目录 一、简介 二、使用 1、创建父工程 2、创建order-service模块 3、创建order-client模块 三、效果 四、配置说明 1、超时配置 全局超时配置 局部超时配置 ...

2024-01-30

Swagger系列:SpringBoot3.x中使用Knife4j

目录 一、简介 二、版本说明 三、使用 四、效果图一、简介官网:https://doc.xiaominfo.com/Knife4j是一个集Swagger2 和 OpenAPI3 为一体的增强解决方案Knife4j 是为 Java MV...

2024-01-30

java.util.ConcurrentModificationException 异常问题详解

环境:JDK 1.8.0_111在Java开发过程中,使用iterator遍历集合的同时对集合进行修改就会出现java.util.ConcurrentModificationException异常,本文就以ArrayList为例去理解和解决...

2024-01-30

详解Java中的字符串

目录 字符串常量池详解 配合反编译代码验证字符串初始化操作. 详解字符串操作类 String, StringBuilder, StringBuffer的底层实现 关于StringBuilder和String之间的讨...

2024-01-30

细说Java主流日志工具库

细说 Java 主流日志工具库 日志框架 java.util.logging (JUL) Log4j Logback Log4j2 Log4j vs Logback vs Log4j2 日志门面 common-logging slf4j common-loggin...

2024-01-30

Java实现简单的RPC框架

一、RPC简介RPC,全称为Remote Procedure Call,即远程过程调用,它是一个计算机通信协议。它允许像调用本地服务一样调用远程服务。它可以有不同的实现方式。如RMI(远程方法调用)...

2024-01-30

java的动态代理机制详解

在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的我们的...

2024-01-30

7000字详解Spring Boot项目集成RabbitMQ实战以及坑点分析

本文给大家介绍一下在 Spring Boot 项目中如何集成消息队列 RabbitMQ,包含对 RibbitMQ 的架构介绍、应用场景、坑点解析以及代码实战。我将使用 waynboot-mall 项目作为代码...

2024-01-30

Java连接kubernates集群最优雅的两种方式

创建maven工程,pom.xml中引入连接k8s的客户端jar包:<properties> <maven.compiler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target>...

2024-01-30

JVM(Java虚拟机) 整理

JVM整体结构本文主要说的是HotSpot虚拟机,JVM 全称是 Java Virtual Machine,中文译名:Java虚拟机简化一下:Java字节码文件Class文件本质上是一个以8位字节为基础单位的二进制流,...

2024-01-30

SpringBoot实现动态数据源配置

场景描述:前一阵子接手的新项目中需要使用2个数据源。一个叫行云数据库,一个叫OceanBase数据库。就是说,我有时候查询要查行云的数据,有时候查询要查 OceanBase 的数据,咋办?废话...

2024-01-30

SpringBoot统一结果返回,统一异常处理,大牛都这么玩

引言在开发Spring Boot应用时,我们经常面临着不同的控制器方法需要处理各种不同类型的响应结果,以及在代码中分散处理异常可能导致项目难以维护的问题。你是否曾经遇到过在不...

2024-01-29

新来的一个同事,把SpringBoot参数校验玩的那叫一个优雅

介绍在开发现代应用程序时,数据验证是确保用户输入的正确性和应用程序数据完整性的关键方面。Spring Boot 提供了强大的数据验证机制,使开发者能够轻松地执行验证操作。本文将...

2024-01-29

Spring Cloud 系列:基于Seata 实现 XA模式

https://seata.io/zh-cn/docs/user/mode/xahttps://seata.io/zh-cn/docs/dev/mode/xa-modeXA 规范 是 X/Open 组织定义的分布式事务处理(DTP,Distributed Transaction Process...

2024-01-28

每日一道Java面试题:方法重载与方法重写,这把指定让你明明白白!

这个问题应该是各大厂面试时问的最多的话题之一了,它们几乎贯穿了我们日常的开发工作,在过往的博客中我们多多少少都提到过重载与重写,而今天我们就一起来详细的学习一下这二者...

2024-01-28
返回顶部
顶部