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

SpringBoot3之Web编程

标签:Rest.拦截器.swagger.测试; 一、简介 基于web包的依赖,SpringBoot可以快速启动一个web容器,简化项目的开发; 在web开发中又涉及如下几个功能点: 拦截器:可以让接口被访问之前,将请求拦截到,通过对请求的识别和校验,判断请求是否允许通过; 页面交互:...[2023/8/9]

C#.NET 国密SM2 加密解密 与JAVA互通 ver:20230805

C#.NET 国密SM2 加密解密 与JAVA互通 ver:20230805   .NET 环境:.NET6 控制台程序(.net core)。 JAVA 环境:JAVA8,带maven 的JAVA控制台程序。   简要解析: 1.最好要到对方源码(DEMO+JAR...[2023/8/7]

Java程序员的MacBookPro(14寸M1)配置备忘录

Java程序员的MacBookPro(14寸M1)配置备忘录

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https: github.com/zq2599/blog_demos 本篇概览 欣宸的月俸虽然很低,但还是咬着牙攒够银子,入手了最低配置的MacBook Pro 14(M1芯片,刘海屏,丐版),经过一段时间折腾,终于...[2023/8/7]

C#.NET 国密SM3 HASH 哈希 与JAVA互通 ver:20230803

C#.NET 国密SM3 HASH 哈希 与JAVA互通 ver:20230803   .NET 环境:.NET6 控制台程序(.net core)。 JAVA 环境:JAVA8,带maven 的JAVA控制台程序。   简要解析: 1:明文输入参数都需要stri...[2023/8/7]

三万字盘点Spring 9大核心基础功能

大家好,我是三友~~ 今天来跟大家聊一聊Spring的9大核心基础功能。 其实最近有小伙伴私信问我怎么不写文章了,催更来了 其实我不是不写,而是一直在写这篇文章,只不过令我没想到的是,从前期的选题、准备、翻源码、动手到写完,前后跨度接近一个月的时间,花了好几个周末,写了三万字,最终才算完...[2023/8/4]

protoc-gen-doc 自定义模板规则详解

protoc-gen-doc 自定义模板规则详解 配套演示工程 此项目中所用 proto 文件位于 ./proto 目录下,来源于 官方proto示例 此项目中所列所有模板case文件位于 ./tmpl 目录下 此教程均基于 markdown 文本演示 前言 最近有通过 proto 文件...[2023/8/4]

简述分布式链路追踪工具——Jaeger

1、简介 1.1 Jaeger是什么   Jaeger  是受到 ? ?Dapper??? 和 ? ?OpenZipkin??? 启发的由 ? ?Uber Technologies?? 作为开源发布的分布式跟踪系统,兼容 OpenTracing ...[2023/8/4]

quarkus依赖注入之六:发布和消费事件

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https: github.com/zq2599/blog_demos 本篇概览 本文是《quarkus依赖注入》系列的第六篇,主要内容是学习事件的发布和接收 如果您用过Kafka、RabbitMQ等消息中间件,对消息...[2023/8/4]

【高并发】SimpleDateFormat类到底为啥不是线程安全的?(附六种解决方案,建议收藏)

大家好,我是冰河~~ 首先问下大家:你使用的SimpleDateFormat类还安全吗?为什么说SimpleDateFormat类不是线程安全的?带着问题从本文中寻求答案。 提起SimpleDateFormat类,想必做过Java开发的童鞋都不会感到陌生。没错,它就是Java中提供的日期时间...[2023/8/2]

面试再也不怕问ThreadLocal了

要解决多线程并发问题,常见的手段无非就几种。加锁,如使用synchronized,ReentrantLock,加锁可以限制资源只能被一个线程访问;CAS机制,如AtomicInterger,AtomicBoolean等原子类,通过自旋的方式来尝试修改资源;还有本次我们要介绍的ThreadLoca...[2023/8/2]

NativeBuferring,一种零分配的数据类型[下篇]

上文说到Unmanaged、BufferedBinary和BufferedString是NativeBuffering支持的三个基本数据类型,其实我们也可以说NativeBuffering只支持Unmanaged和IReadOnlyBufferedObject<T>两种类型,Buff...[2023/8/2]

C#.NET 国密SM4对称加解密 与JAVA互通 ver:20230731

C#.NET 国密SM4对称加解密 与JAVA互通 ver:20230731   .NET 环境:.NET6 控制台程序(.net core)。 JAVA 环境:JAVA8,带maven 的JAVA控制台程序。   简要解析: 1:加密的KEY、明文等输入参数都需...[2023/8/2]

为什么list.sort()比Stream().sorted()更快?

昨天写了一篇文章《小细节,大问题。分享一次代码优化的过程》,里面提到了list.sort()和list.strem().sorted()排序的差异。 说到list sort()排序比stream().sorted()排序性能更好。 但没说到为什么。 有朋友也提到了这一点。 本文重新开始,...[2023/8/2]

quarkus依赖注入之四:选择注入bean的高级手段

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https: github.com/zq2599/blog_demos 本篇概览 本文是《quarkus依赖注入》系列的第四篇,在应用中,一个接口有多个实现是很常见的,那么依赖注入时,如果类型是接口,如何准确选择实现呢...[2023/8/2]

Builder 生成器模式简介与 C# 示例【创建型2】【设计模式来了_2】

〇、简介 1、什么是生成器模式? 一句话解释: ??在构造一个复杂的对象(参数多且有可空类型)时,通过一个统一的构造链路,可选择的配置所需属性值,灵活实现可复用的构造过程。 生成器模式的重心,在于分离构建算法和具体的构造实现,从而使得构建算法可以重用。采用不同的构建实现,产生不同的产品。所以...[2023/8/2]

【手写系列】手把手教你如何实现 列表转树-树转列表

这个应该算是前端中经常出现的业务场景,不过大部分都是由组件库帮助你做好了这些事情 如果要是让你自己来实现,你又会如何实现呢? 今天,我们就来好好讲解下这两个需求该如何去写,在知道如何用的情况下,也要知道如何实现它们。 从这篇文章你能学到(复习)什么东西 JS中Map的用法 递归解法 h...[2023/7/31]

是时候丢掉BeanUtils了

前言 为了更好的进行开发和维护,我们都会对程序进行分层设计,例如常见的三层,四层,每层各司其职,相互配合。也随着分层,出现了VO,BO,PO,DTO,每层都会处理自己的数据对象,然后向上传递,这就避免不了经常要将一个对象的属性拷贝给另一个对象。 例如我有一个User对象和一个UserVO对象,...[2023/7/31]

JVM调优篇:探索Java性能优化的必备种子面试题

JVM内存模型 首先面试官会询问你在进行JVM调优之前,是否了解JVM内存模型的基础知识。这是一个重要的入门问题。JVM内存模型主要包括程序计数器、堆、本地方法栈、Java栈和方法区(1.7之后更改为元空间,并直接使用系统内存)。 正常堆内存又分为年轻代和老年代。在Java虚拟机中,年轻代...[2023/7/31]

记一次线上问题 → Deadlock 的分析与优化

开心一刻   今天女朋友很生气   女朋友:我发现你们男的,都挺单纯的   我:这话怎么说   女朋友:脑袋里就只想三件事,搞钱,跟谁喝点,还有这娘们真好看   我:你错了,其实我们男人吧,每天只合计一件事   女朋友:啥事呀?   我:这娘们真好看,得搞钱跟她喝点 问题复现  ...[2023/7/31]

体验IntelliJ IDEA的远程开发(Remote Development)

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https: github.com/zq2599/blog_demos 本篇概览 IDEA的远程开发功能,可以将本地的编译、构建、调试、运行等工作都放在远程服务器上执行,而本地仅运行客户端软件进行常规的开发操作即可,官...[2023/7/31]

SpringBoot 启动流程分析(寻找扩展点) - M-Anonymous

1、SpringBoot maven 依赖版本 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http: maven.apache.org/POM/4.0.0" xmlns:xsi="http:...[2023/7/31]

浅析访问者模式

0. 前言 在阅读 Kubernetes: kubectl 源码时看到有关访问者设计模式的运用。访问者模式是行为型设计模式的一种,本篇文章将对访问者模式做一个介绍。 1. 访问者模式 1.1 示例 首先,给出一个比较粗糙的示例。 实现程序,功能如下: 当男人成功时,显示我有一个好老婆;当...[2023/7/31]

java基础——泛型

泛型的引入 看下面这段代码: private static int add(int a, int b) { System.out.println(a + "+" + b + "=" + (a + b)); return a + b; } private static floa...[2023/7/31]

quarkus依赖注入之二:bean的作用域

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https: github.com/zq2599/blog_demos 关于bean的作用域(scope) 官方资料:https: lordofthejars.github.io/quarkus-cheat-she...[2023/7/31]

并发编程-CompletableFuture解析

1、CompletableFuture介绍 CompletableFuture对象是JDK1.8版本新引入的类,这个类实现了两个接口,一个是Future接口,一个是CompletionStage接口。 CompletionStage接口是JDK1.8版本提供的接口,用于异步执行中的阶段处理,C...[2023/7/28]

策略模式+Spring配置类优化多if..else思路

图示 1. 现状 场景: 假设设备上报不同类型的消息,我们要对不同类型的消息做不同的处理。如果我们通过if..else的方式处理的话会显得比较冗余。 例如: if("alarmEvent".equals(msg)){ 处理告警消息逻辑 ... }else if("devi...[2023/7/28]

JVM 常见错误汇总

栈内存溢出 栈内存错误包括:栈帧过多(StackOverflowError)、栈帧过大(OutOfMemoryError) StackOverflowError:如果线程请求的栈深度大于虚拟机所允许的最大深度; OutOfMemoryError:如果虚拟机的占内存允许动态扩展,当扩展容量无法申...[2023/7/28]

Java并发篇:6个必备的Java并发面试种子题目

Java并发篇:6个必备的Java并发面试种子题目

线程创建和生命周期 线程的创建和生命周期涉及到线程的产生、执行和结束过程。让我们继续深入探索这个主题: 线程的创建方式有多种,你可以选择适合你场景的方式: 继承Thread类: 创建一个类,继承自Thread类,并重写run()方法。通过实例化这个类的对象,并调用start()方法,系统会自...[2023/7/28]

Jenkins-Pipline实现原理

Jenkins-Pipline原理 本文仅探讨jenkins pipline 的原理,是流水线的一个demo版本实现,不能代表Jenkins pipline的具体实现,仅供参考。 1. Jenkins流水线介绍 Jenkinsfile流水线是Jenkins CI/CD工具中用来定义、构建和...[2023/7/28]

Java8 函数式编程stream流

开篇介绍 Java 8 中新增的特性旨在帮助程序员写出更好的代码,其中对核心类库的改进是很关键的一部分,也是本章的主要内容。对核心类库的改进主要包括集合类的 API 和新引入的流(Stream),流使程序员得以站在更高的抽象层次上对集合进行操作。下面将介绍stream流的用法。 1.初始环境准备...[2023/7/28]

quarkus实战之八:profile

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https: github.com/zq2599/blog_demos 本篇概览 本文是《quarkus实战》系列的第八篇,经过前面的学习,咱们对配置有了足够了解,但问题也随之而来:如何让应用以最小的改动同时运行在不同...[2023/7/28]

你真正了解Spring的工作原理吗

 Spring   1.1 什么是Spring IOC 和DI ?   ① 控制反转(IOC):Spring容器使用了工厂模式为我们创建了所需要的对象,我 们使用时不需要自己去创建,直接调用Spring为我们提供的对象即可,这就是控 制反转的思想...[2023/7/26]

源码解析Collections.sort ——从一个逃过单测的 bug 说起

本文从一个小明写的bug 开始,讲bug的发现、排查定位,并由此展开对涉及的算法进行图解分析和源码分析。 事情挺曲折的,因为小明的代码是有单测的,让小明更加笃定自己写的没问题。所以在排查的时候,也经历了前世的500年,去排查排序后的list改动(主要是小明和同事互相怀疑对方的代码,不多说了)。...[2023/7/26]

我开源了团队内部基于SpringBoot Web快速开发的API脚手架v1.6.0更新

什么是 rest-api-spring-boot-starter rest-api-spring-boot-starter 适用于SpringBoot Web API 快速构建让开发人员快速构建统一规范的业务RestFull API 不在去关心一些繁琐。重复工作,而是把重点聚焦到业务。 动机 ...[2023/7/26]

你的Spring应用启动很慢?不妨试试这个工具!

睡不着闲逛,在GitHub上看到一个挺实用的开源项目:Spring Startup Analyzer。 从项目名称中就大概能猜到,这是一个分析Spring应用启动过程的工具。Spring Startup Analyzer通过采集Spring应用启动过程的数据,进而生成一个交互式的分析报告,帮助...[2023/7/24]

【技术积累】HTML+CSS+JavaScript中的基础知识【二】

Math对象 JavaScript中的Math对象是一个内置的数学对象,表示对数字进行数学运算的方法和属性的集合。 Math对象不是一个构造函数,所以不能使用new关键字来创建一个Math对象的实例。它包含了一些常见的数学运算函数和常量,可以直接通过Math对象来调用。 以下是Math对象的...[2023/7/24]

Java 调用gdal API(二)——栅格裁剪

gdal可以说是GIS数据处理比较好的工具之一,虽然也提供了Java API,但是官方文档确实太过简单,用起来确实太难受,每次都需要去参考对应的C++api,然后在对应使用。 因此小编决定从这篇文章开始,将自己以前以及今后用到的API,都记录下,以帮助更多从事java GIS服务开发者。 今...[2023/7/24]

Java服务刚启动时,一小波接口超时排查全过程

原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,非公众号转载保留此声明。 简介 我们组有一个流量较大的Java服务,每次发代码时,服务都会有一小波接口超时,之前简单分析过,发现这些超时的case仅发生在服务刚启动时,少量请求会耗时好几秒,但之后又马上恢复正常。 问题发生 如...[2023/7/24]

quarkus实战之四:远程热部署

将本地的改动极速同步到远程服务端,并自动生效,掌握此技能,开发调试会更高效 欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https: github.com/zq2599/blog_demos 本篇概览 本文是《quarkus实战》系列的第四篇,如标题所示,今天...[2023/7/24]

Java面试题全集(二)

1. ?先CopyOnWriteArrayList内部也是?过数组来实现的,在向CopyOnWriteArrayList添加元素时,会复制?个新的数组,写操作在新数组上进?,读操作在原数组上进? 2. 并且,写操作会加锁,防?出现并发写?丢失数据的问题 3. 写操作结束之后会把原数组指向新数...[2023/7/24]

面霸的自我修养:Java线程专题

王有志,一个分享硬核Java技术的互金摸鱼侠 加入Java人的提桶跑路群:共同富裕的Java人 平时我在网上冲浪的时候,收集了不少八股文和面试文,内容虽然多,但质量上良莠不齐,主打一个不假思索的互相抄,使得很多错误内容一代代得“传承”了下来。所以,我对收集的内容做了归纳和整理,通过查阅资料...[2023/7/21]

java协程线程之虚拟线程

前言 众所周知,java 是没有协程线程的,在我们如此熟知的jdk 1.8时代,大佬们想出来的办法就是异步io,甚至用并行的stream流来实现,高并发也好,缩短事件处理时间也好;大家都在想着自己认为更好的实现方式; 在来说说吧,我为什么会在今天研究这个破b玩意儿呢, 这事情还的从一个月前的...[2023/7/21]

我开源了团队内部基于SpringBoot Web快速开发的API脚手架stater

我们现在使用SpringBoot 做Web 开发已经比之前SprngMvc 那一套强大很多了。 但是 用SpringBoot Web 做API 开发还是不够简洁有一些。 每次Web API常用功能都需要重新写一遍。或者复制之前项目代码。于是我封装了这么一个 抽出SpringBoot W...[2023/7/21]

聊聊Spring注解@Transactional失效的那些事

一、前言 emm,又又又踩坑啦。这次的需求主要是对逾期计算的需求任务进行优化,现有的计算任务运行时间太长了。简单描述下此次的问题:在项目中进行多个数据库执行操作时,我们期望的是将其整个封装成一个事务,要么全部成功,或者全部失败,然而在自测异常场景时发现,里面涉及的第一个数据状态更新成功了,但是后...[2023/7/19]

再见RestTemplate,Spring 6.1新特性:RestClient 了解一下!

在最近发布的Spring 6.1 M2版本中,推出了一个全新的同步HTTP客户端:RestClient。用一句话来让Spring开发者认识RestClient的话:像WebClient一样具备流畅API的RestTemplate。所以,RestClient的使命就是淘汰已经有14年历史的Rest...[2023/7/19]

SpringBoot 使用 Sa-Token 实现账号封禁、分类封禁、阶梯封禁

SpringBoot 使用 Sa-Token 实现账号封禁、分类封禁、阶梯封禁

一、需求分析 之前的章节中,我们学习了 踢人下线 和 强制注销 功能,用于清退违规账号。在部分场景下,我们还需要将其 账号封禁,以防止其再次登录。 Sa-Token 是一个轻量级 java 权限认证框架,主要解决登录认证、权限认证、单点登录、OAuth2、微服务网关鉴权 等一系列权限相关问题...[2023/7/19]

面试官:一个 SpringBoot 项目能处理多少请求?(小心有坑)

你好呀,我是歪歪。 这篇文章带大家盘一个读者遇到的面试题哈。 根据读者转述,面试官的原问题就是:一个 SpringBoot 项目能同时处理多少请求? 不知道你听到这个问题之后的第一反应是什么。 我大概知道他要问的是哪个方向,但是对于这种只有一句话的面试题,我的第一反应是:会不会有坑? ...[2023/7/19]

Dubbo的高级特性:服务管控篇

Dubbo的高级特性:服务管控篇

王有志,一个分享硬核Java技术的互金摸鱼侠 加入Java人的提桶跑路群:共同富裕的Java人 上一篇,我们已经介绍了 DUbbo 在服务治理方面提供的特性,今天我们一起来看看 Dubbo 在其它方面提供的特性。同服务治理篇一样,本文的目的在于学会...[2023/7/19]

浅析建造者模式

0. 前言 建造者模式是创建型设计模式的一种。本篇文章将介绍什么是建造者模式,以及什么时候用建造者模式,同时给出 Kubernetes:kubectl 中类似建造者模式的示例以加深理解。 1. 建造者模式 1.1 从工厂函数说起 试想构建房子类,其属性如下: type house stru...[2023/7/17]

【技术积累】JavaScript中的基础语法【二】

JavaScript编写方式 JavaScript是一种脚本语言,用于为网页添加交互性和动态功能。它可以直接嵌入到HTML中,并通过浏览器解释执行。下面是一些常见的JavaScript编写方式和相应的代码示例: 内联方式 在HTML文件中直接嵌入JavaScript代码,使用`<scri...[2023/7/17]

561
10
记录数:11050 页数:9/221首页上一页45678910111213下一页尾页
 友情链接:直通硅谷  直通硅谷 怎么样 mac软件下载
加载更多