经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
Java相关:JavaJSPJFinalGroovySpringSpring BootServletScalaStruts2JUnit设计模式
 Java相关

【深入浅出Spring原理及实战】「源码调试分析」深入源码探索Spring底层框架的的refresh方法所出现的问题和异常

学习Spring源码的建议 阅读Spring官方文档,了解Spring框架的基本概念和使用方法。 下载Spring源码,可以从官网或者GitHub上获取。 阅读Spring源码的入口类,了解Spring框架的启动过程和核心组件的加载顺序。 阅读Spring源码中的注释和文档...[2023/4/24]

spring的事务传播机制

spring的事务传播机制 嫌弃内容代码复杂的可直接看思维导图大纲即可 基本概念 指的就是当一个事务方法被另一个事务方法调用时,这个事务方法应该如何进行 七种行为和测试 PROPAGATION_REQUIRED 默认,当前存在事务,则加入该事务;不存在事务,创建新事务。 public ...[2023/4/24]

苞米豆的多数据源 → dynamic-datasource-spring-boot-starter,挺香的!

开心一刻   2023年元旦,我妈又开始了对我的念叨   妈:你到底想多少岁结婚   我:60   妈:60,你想找个多大的   我:找个55的啊,她55我60,结婚都有退休金,不用上班不用生孩子,不用买车买房,成天就是玩儿   我:而且一结婚就是白头偕老,多好   我妈直接一大嘴巴...[2023/4/21]

由浅入深详解四种分布式锁

由浅入深详解四种分布式锁

在多线程环境下,为了保证数据的线程安全,锁保证同一时刻,只有一个可以访问和更新共享数据。在单机系统我们可以使用synchronized锁或者Lock锁保证线程安全。synchronized锁是Java提供的一种内置锁,在单个JVM进程中提供线程之间的锁定机制,控制多线程并发。只适用于单机环境下的...[2023/4/21]

SpringBoot应用集成微服务组件Nacos

目录springboot与微服务组件nacosNacos服务快速启动STS4 开发工具Maven 环境配置STS4开发工具引入Maven配置Maven Repo配置阿里云镜像源Springboot集成nacos服务springboot项目构建springboot集成微服务nacosnacos版本...[2023/4/21]

Spring源码系列:核心概念解析

前言 本文旨在为读者解析Spring源码中的关键类,以便读者在深入阅读源码时,能够了解关键类的作用和用途。在阅读Spring源码时,经常会遇到一些不熟悉的概念,了解关键类的作用可以帮助读者更好地理解这些概念。 BeanDefinition BeanDefinition是Spring框架中的一个...[2023/4/21]

Spring的Factories机制介绍

Java 的 SPI 机制 Java SpringBoot 加载 yml 配置文件中字典项 Spring的Factories就是Spring版本的Java Spi。 Spring Factories的最重要的功能就是:可以通过配置文件指定Spring容器加载一些特定的组件。 Spring ...[2023/4/21]

ReentrantLock从源码解析Java多线程同步学习

目录前言管程管程模型MESA模型主要特点AQS共享变量资源访问方式主要方法队列node节点等待状态ReentrantLock源码分析实例化ReentrantLock加锁A线程加锁成功B线程尝试加锁释放锁总结 前言 如今多线程编程已成为了现代软件开发中的重要部分,而并发编程中的线程同步问题更是一道...[2023/4/21]

一文带你搞懂Java中Synchronized和Lock的原理与使用

一文带你搞懂Java中Synchronized和Lock的原理与使用

目录1、Synchronized与Lock对比2、Synchronized与Lock原理2.1 Synchronized原理2.2 Lock原理3、Synchronized与Lock使用SynchronizedLock4、相关问题 1、Synchronized与Lock对比 实现方式:Syn...[2023/4/21]

JavaScript数组对象高阶函数reduce的妙用详解

JavaScript数组对象高阶函数reduce的妙用详解

目录reduce 是 JavaScript 数组对象上的一个高阶函数计算数组的平均数求数组的最大值求数组的最小值数组去重计算数组中每个元素出现的次数实现数组分组计算数组中连续递增数字的长度计算对象数组的属性总和将对象数组转换为键值对对象计算数组中出现次数最多的元素实现 Promise 串行执行对象属...[2023/4/21]

一个基于Java线程池管理的开源框架Hippo4j实践

@目录概述定义线程池痛点功能框架概览架构部署Docker安装二进制安装运行模式依赖配置中心接入流程个性化配置线程池监控无中间件依赖接入流程服务端配置三方框架线程池适配拒绝策略自定义 概述 定义 Hippo4j 官网地址 https: hippo4j.cn/ 最新版本1.5.0 Hipp...[2023/4/19]

JDK8到JDK17有哪些吸引人的新特性?

作者:京东零售 刘一达 前言 2006年之后SUN公司决定将JDK进行开源,从此成立了OpenJDK组织进行JDK代码管理。任何人都可以获取该源码,并通过源码构建一个发行版发布到网络上。但是需要一个组织审核来确保构建的发行版是有效的, 这个组织就是JCP(Java Community...[2023/4/19]

Springboot整合Flowable6.x导出bpmn20

项目源码仓库 BPMN2.0(Busine Proce Model and Notation)是一套业务流程模型与符号建模标准,以XML为载体,以符号可视化业务,支持精准的执行语义来描述元素的操作。 Flowable诞生于Activiti,是一个使用Java编写的轻量级业务流程引擎。Fl...[2023/4/19]

Solon2 常用注解之 @ProxyComponent 用法说明

在 Solon 提倡“克制”的原则下,托管组件分为: 普通组件 代理组件(即 @ProxyComponent 注解的类)。代理的细节可以看下《动态代理的本质》 。 之所以需要代理,是为了能拦截函数;之所以需要拦截函数,是为了让函数上的注解生效。也算是 AOP 的基础。(如果没有拦截需求,改...[2023/4/19]

实现声明式锁,支持分布式锁自定义锁、SpEL和结合事务

目录2.实现2.1 定义注解2.2 定义锁接口2.3 锁的实现2.3.1 什么是SPI2.3.2 通过SPI实现锁的多个实现类2.3.3 通过SPI自定义实现锁3.定义切面3.1 切面实现3.2 SpEL表达式获取动态key3.3 锁与事务的结合4.测试4.1 ReentrantLock测试4....[2023/4/19]

Java的对象克隆

Java的对象克隆

本节我们会讨论 Cloneable 接口,这个接口指示一个类提供了一个安全的 clone() 方法。 Object 类提供的 clone() 方法是 “浅拷贝”,并没有克隆对象中引用的其他对象,原对象和克隆的对象仍然会共享一些信息。深拷贝指的是:在对象中存在其他对象的引用的情况下,会同时克隆对...[2023/4/19]

8个JavaScript中高阶函数的运用分享

目录函数作为参数传递函数作为返回值函数柯里化函数组合面向切面编程函数式编程闭包复杂的例子 函数作为参数传递 高阶函数可以接受一个或多个函数作为参数,这些函数可以在高阶函数中被调用,实现某种特定的功能 function operation(num1, num2, callback) { ...[2023/4/19]

解决java启动时报线程占用报错:Exception?in?thread?“Thread-14“?java.net.BindException:?Address?already?in?use:?bind

目录前言1 异常2 问题定位2.1 第一种情况2.2 第二种情况2.3 第三种情况3 问题原因4 思考学习总结 前言 本文提供三种不同的解决方式,也是三种不同的情况和思路 我的问题是在springboot整合了xxl-job一段时间后出现的。如果你程序里集成了xxl-job或者有需要配置其它...[2023/4/19]

【深度思考】聊聊JDK动态代理原理

1. 示例 首先,定义一个接口: public interface Staff { void work(); } 然后,新增一个类并实现上面的接口: public cla Coder implements Staff { @Override public voi...[2023/4/17]

麻了,不要再动不动就BeanUtil.copyProperties!!!

前言 最近项目上要求升级一个工具包hutool的版本,以解决安全漏洞问题,这不升级还好,一升级反而捅出了更大的篓子,究竟是怎么回事呢? 事件回顾 我们项目原先使用的hutool版本是5.7.2,在代码中,我们的数据传输对象DTO和数据实体对象中大量使用了工具包中的BeanUtil.copyPr...[2023/4/17]

Java中「Future」接口详解

目录一、背景二、Future接口1、入门案例2、Future接口三、CompletableFuture类1、基础说明2、核心方法2.1 实例方法2.2 计算方法2.3 结果获取方法2.4 任务编排方法2.5 异常处理方法3、线程池问题四、CompletableFuture原理1、核心结构2、零依...[2023/4/17]

springboot实现分页功能的完整代码

目录1.分页功能的作用2.建立测试数据库3.分页功能返回的结果封装4.分页功能代码具体实现4.1数据层4.2业务层4.3控制层5.jqGrid分页插件总结 1.分页功能的作用 分页功能作为各类网站和系统不可或缺的部分(例如百度搜索结果的分页等),当一个页面数据量大的时候分页作用就体现出来的,其作...[2023/4/17]

spring?bean标签中的init-method和destroy-method详解

目录1 背景介绍2 init-method3 destroy-method4 总结 1 背景介绍 在很多项目中,经常在xml配置文件中看到init-method 或者 destroy-method 。因此整理收集下,方便以后参考和学习。可以使用 init-method 和 destroy-met...[2023/4/17]

Java构建树结构的公共方法

一、前提 pId需要传入用来确认第一级的父节点,而且pId可以为null。 树实体类必须实现:TreeNode接口 MyTreeVo必须有这三个属性:id、pId、children 可以根据不同需求,配置TreeNode和MyTreeVo中固定的属性 二、代码 定义TreeNode接口 ...[2023/4/14]

Springboot接入ChatGPT 续

Springboot接入ChatGPT 续

在之前的文章\(^{[ 1 ]}\)中,原方案的设计,是基于功能实现的角度去设计的,对于功能性的拓展,考虑不全面,结合收到的反馈意见,对项目进行了拓展优化。完成的优化拓展有如下几个方面 固定会话 历史消息 鉴权拓展 固定会话 原实现方案中预留了chatId这个字段,原chatId并未...[2023/4/14]

Spring @Profile注解使用和源码解析

介绍 在之前的文章中,写了一篇使用Spring @Profile实现开发环境,测试环境,生产环境的切换,之前的文章是使用SpringBoot项目搭建,实现了不同环境数据源的切换,在我们实际开发中,会分为dev,test,prod等环境,他们之间数独立的,今天进来详解介绍Spring @Profi...[2023/4/14]

java.lang.OutOfMemoryError- unable to create new native thread 问题排查

问题描述 最近连续两天大约凌晨3点,线上服务开始异常,出现OOM报错。且服务所在的物理机只能ping通,但是无法登录。报错信息如下: ERROR 04-12 03:01:43,930 [DefaultQuartzScheduler_Worker-3] JobRunShell[JobRunShe...[2023/4/14]

带你揭开神秘的Javascript AST面纱之Babel AST 四件套的使用方法

作者:京东零售 周明亮 写在前面 这里我们初步提到了一些基础概念和应用: 分析器 抽象语法树 AST AST 在 JS 中的用途 AST 的应用实践 有了初步的认识,还有常规的代码改造应用实践,现在我们来详细说说使用 AST, 如何进行代码改造? Babel AST 四件套的使用方法 ...[2023/4/12]

Java并发(一)----进程、线程、并行、并发

一、进程与线程 进程 程序由指令和数据组成,但这些指令要运行,数据要读写,就必须将指令加载至 CPU,数据加载至内存。在指令运行过程中还需要用到磁盘、网络等设备。进程就是用来加载指令、管理内存、管理 IO 的 当一个程序被运行,从磁盘加载这个程序的代码至内存,这时就开启了一个进程。 ...[2023/4/12]

Java中ThreadLocal的用法和原理

用法 隔离各个线程间的数据 避免线程内每个方法都进行传参,线程内的所有方法都可以直接获取到ThreadLocal中管理的对象。 package com.example.test1.service; import org.springframework.scheduling.annotati...[2023/4/12]

Spring中Bean的实例化详细流程

还是举个例子,我有一个朋友小汪他远赴南方某城市打工。然后安定下来后他的朋友很想来家里玩,但是呢我这个朋友家里搞的很乱,所以他不好意思请朋友来家里玩。这时我的另一个朋友说那请一个保姆把家里好好整理一下就可以了,然后给他介绍了一个保姆大S(PS:本文无意指向任何人,因为Spring的前缀是S)然后就...[2023/4/12]

Spring入门系列:浅析知识点

前言 讲解Spring之前,我们首先梳理下Spring有哪些知识点可以进行入手源码分析,比如: Spring IOC依赖注入 Spring AOP切面编程 Spring Bean的声明周期底层原理 Spring 初始化底层原理 Spring Transaction事务底层原理 Hello W...[2023/4/12]

使用“纯”Servlet做一个单表的CRUD操作 - Rainbow-Sea

使用“纯”Servlet做一个单表的CRUD操作 每博一文案 庄子说:"独往独来,是谓独有。独有之人,是谓至贵"。热闹是别人的狂欢,而孤独是自己的自由。 相聚总是短暂,唯孤独绵长,学会孤独为伍,才能找到浮世清欢。 金庸曾笔下人物说:"天上的白云聚了又聚,散了又散,人生离合,亦复如斯。" 人生...[2023/4/12]

SpringBoot项目中使用缓存Cache的正确姿势!!!

前言 缓存可以通过将经常访问的数据存储在内存中,减少底层数据源如数据库的压力,从而有效提高系统的性能和稳定性。我想大家的项目中或多或少都有使用过,我们项目也不例外,但是最近在review公司的代码的时候写的很蠢且low, 大致写法如下: public User getById(String i...[2023/4/12]

SpringBoot线程池和Java线程池的用法和实现原理

使用默认的线程池 方式一:通过@Async注解调用 public cla AsyncTest { @Async public void async(String name) throws InterruptedException { System.out.pri...[2023/4/12]

Spring Boot 整合 Kafka

Kafka 环境搭建 kafka 安装、配置、启动、测试说明: 1. 安装:直接官网下载安装包,解压到指定位置即可(kafka 依赖的 Zookeeper 在文件中已包含) 下载地址:https: kafka.apache.org/downloads 示例版本:kafka_2.13-2.8.0...[2023/4/12]

Java实现文件上传的方法总结

目录1.文件上传接收文件接口2.接口主要内容部分3.postman接口调用 1.文件上传接收文件接口 Controller成通过post上传方式定义接口,上传文件通常使用post的上传方式,get用于获取数据、文件。 单个入参可以使用@RequestParam标注,不用封装到类里边在使用@Rep...[2023/4/12]

Java KindEditor粘贴图片自动上传到服务器功能实现

?图片的复制无非有两种方法,一种是图片直接上传到服务器,另外一种转换成二进制流的base64码目前限chrome浏览器使用首先以um-editor的二进制流保存为例:打开umeditor.js,找到UM.plugins['autoupload'],然后找到autoUploadHan...[2023/4/12]

深入了解JavaScript中的垃圾回收机制

JavaScript中的垃圾回收机制负责自动管理内存,回收不再使用的对象所占用的内存空间。在JavaScript中,开发者不需要显式地分配和释放内存,垃圾回收器会自动完成这些操作。以下是关于JavaScript垃圾回收机制的一些关键概念: 内存生命周期:JavaScript内存生命周期包括分配、...[2023/4/12]

MQTT(EMQX) - SpringBoot 整合MQTT 连接池 Demo - 附源代码 + 在线客服聊天架构图

MQTT(EMQX) - SpringBoot 整合MQTT 连接池 Demo - 附源代码 + 在线客服聊天架构图

MQTT(EMQX) - Linux CentOS Docker 安装 MQTT 概述 MQTT (Me age Queue Telemetry Transport) 是一个轻量级传输协议,它被设计用于轻量级的发布/订阅式消息传输,MQTT协议针对低带宽网络,低计算能力的设备,做了特殊的优化。...[2023/4/10]

Java 异常处理:使用和思考

Java 异常处理:使用和思考

概念 异常处理的概念起源于早期的编程语言,如 LISP、PL/I 和 CLU。这些编程语言首次引入了异常处理机制,以便在程序执行过程中检测和处理错误情况。异常处理机制随后在 Ada、Modula-3、C++、Python、Java 等编程语言中得到了广泛采用和发展。在 Java 中,异常处理是提...[2023/4/10]

c#快速入门~在java基础上,知道C#和JAVA 的不同即可

? 观看下文前提:如果你的主语言是java,现在想再学一门新语言C#,下文是在java基础上,对比和java的不同,快速上手C#,当然不是说学C#的前提是需要java,而是下文是从主语言是java的情况下,学习C#入门到进阶。 C# 学习参考文档和开发工具 微软c#官方文档:h...[2023/4/10]

让代码变得优雅简洁的神器:Java8 Stream流式编程

原创/朱季谦 本文主要基于实际项目常用的Stream Api流式处理总结。 因笔者主要从事风控反欺诈相关工作,故而此文使用比较熟悉的三要素之一的【手机号】黑名单作代码案例说明。 我在项目当中,很早就开始使用Java 8的流特性进行开发了,但是一直都没有针对这块进行开发总结。...[2023/4/10]

干掉复杂的工具类,国产Java工具类库 Hutool 很香!

Hutool 大家已经比较熟悉了,这是一个超全的 Java 工具库,深受国内开发者的喜爱。 我之前其实是不太喜欢使用这种功能太多的工具类的,也比较担心稳定性和安全性,后面慢慢接受了就感觉其实也还好。而且,我们还可以按需只引入自己需要的功能模块,相对也比较灵活。 Hutool 的官方文档介绍的...[2023/4/7]

贯穿设计模式第一话--单一职责原则

?????? 茫茫人海千千万万,感谢这一刻你看到了我的文章,感谢观赏,大家好呀,我是最爱吃鱼罐头,大家可以叫鱼罐头呦~?????? 从今天开始,将开启一个专栏,【贯穿设计模式】,设计模式是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案,是一套被反复使用、多数人知晓的、经过分...[2023/4/7]

万字详解 | Java 流式编程

概述 Stream API 是 Java 中引入的一种新的数据处理方法。它提供了一种高效且易于使用的方法来处理数据集合。Stream API 支持函数式编程,可以让我们以简洁、优雅的方式进行数据操作,还有使用 Stream 的两大原因: 在大多数情况下,将对象存储在集合中就是为了处理它们,因此...[2023/4/7]

Java GenericObjectPool 对象池化技术--SpringBoot sftp 连接池工具类

Java BasePooledObjectFactory 对象池化技术 通常一个对象创建、销毁非常耗时的时候,我们不会频繁的创建和销毁它,而是考虑复用。复用对象的一种做法就是对象池,将创建好的对象放入池中维护起来,下次再用的时候直接拿池中已经创建好的对象继续用,这就是池化的思想。 Apach...[2023/4/7]

Sevlet规范:HttpServlet类 和 HttpServletRequest接口 源码解析 - Rainbow-Sea

Sevlet规范:HttpServlet类 和 HttpServletRequest接口 源码解析 每博一文案 命运总是不如人愿,但往往是在无数的痛苦总,在重重的矛盾和艰辛中,才是人成熟起来。 你,为这瞬间的辉煌,忍耐了多少暗淡无光的日月,你会死亡,但你也会证明生命有多强大。 一次邂逅,一次...[2023/4/6]

SpringBoot中如何实现业务校验,这种方式才叫优雅!

大家好,我是飘渺。 在日常的接口开发中,为了保证接口的稳定安全,我们一般需要在接口逻辑中处理两种校验: 参数校验 业务规则校验 首先我们先看看参数校验。 参数校验 参数校验很好理解,比如登录的时候需要校验用户名密码是否为空,创建用户的时候需要校验邮件、手机号码格式是否准确。 而实现参...[2023/4/6]

单机最快的队列Disruptor解析和使用

单机最快的队列Disruptor解析和使用

前言 介绍高性能队列Disruptor原理以及使用例子。 Disruptor是什么? Disruptor是外汇和加密货币交易所运营商 LMAX group 建立高性能的金融交易所的结果。用于解决生产者、消费者及其数据存储的设计问题的高性能队列实现。可以对标JDK中的ArrayBlockingQ...[2023/4/6]

561
17
记录数:11217 页数:16/225首页上一页11121314151617181920下一页尾页
 友情链接:直通硅谷  点职佳  北美留学生论坛
加载更多

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号