java工程师 精华 知识

Java实现记录对象修改前后的变化

需求描述今天接到一个需求,修改数据时需要记录修改详情。详情包括,被修改的字段,修改前的值和修改后的值。 解决思路分别比较修改前后两个Bean实例的所有成员变量,当值不一致时,记录变量名称,以及修改前后的值。 对于该方案,可以解决特定类型的Bean。 如果有其它类型的Bean也有这种需求,则需要新写一 ......
对象 Java

性能测试知识科普(一):核心术语

转载:https://www.cnblogs.com/imyalost/p/16706311.html 前几天在技术交流群,有同学问了一个性能问题,由此引发了很多同学的追问: 并发到底是什么鬼? 怎么判断系统到了性能瓶颈? 监控那么多指标到底关注哪些? 应这些同学要求,这篇文章做个性能测试理论知识扫 ......
科普 术语 性能 核心 知识

性能测试知识科普(五):能力分层

转载:https://www.cnblogs.com/imyalost/p/16916594.html 这是性能测试知识科普的第五篇文章。 前面的文章分享了性能测试中的核心术语和指标、常用测试策略、压测工具选型以及性能需求分析的内容。 写这篇文章的初衷是昨天有同学咨询我,希望通过付费方式让我教她性能 ......
科普 性能 能力 知识

性能测试知识科普(六):三大模型

转载:https://www.cnblogs.com/imyalost/p/16923884.html 前面几篇文章介绍了性能测试中的核心术语和指标、常用测试策略、压测工具选型、性能需求分析以及性能测试能力分层和新手的学习路径,这几部分可以理解为做性能测试之前打基础的部分。 今天的这篇文章是性能测试 ......
科普 模型 性能 三大 知识

性能测试知识科普(三):压测工具

转载:https://www.cnblogs.com/imyalost/p/16759916.html 上一篇文章聊了性能测试中常见的测试策略以及如何选择合适的策略进行测试活动开展。 这篇文章是性能测试知识科普的第三篇,我想聊聊很多性能测试小白最关心也最核心的问题——压测工具。 普遍存在的问题 聊压 ......
科普 性能 工具 知识

性能测试知识科普(七):监控能给你带来什么

转载:https://www.cnblogs.com/imyalost/p/16933850.html 这是性能测试知识科普的第七篇文章。 前几天关于三大模型的文章发布后,有同学在技术交流群问了我一个问题: 文中提到的QPS和TPS有什么区别,该如何在实际工作中理解这些指标的含义? 群里其他同学也发 ......
科普 性能 知识

高级性能测试工程师面试必问十大问题

转载:https://www.cnblogs.com/imyalost/p/16423676.html 昨天一个前同事找我,问有没有性能测试岗位的面试题,正好之前帮业务团队加面过几次性能测试岗位的候选人,我将面试时候会问的一些问题以及要考察的点列了出来,供大家参考。 1、介绍下最近做过的项目,背景、 ......
性能 工程师 工程 问题

读后笔记 -- Java核心技术(第11版 卷I )Chapter1-2 Java 程序设计

本书源码(下载对应版本的代码):https://horstmann.com/corejava/index.html Java 17 API 文档:https://docs.oracle.com/javase/17/docs/api 配套视频讲解(卷一):https://space.bilibili. ......
读后 Java 程序设计 Chapter1 核心

IDEA Rebuild项目错误:Information:java: java.lang.AssertionError: Value of x -1

模仿lombok工具,我的enumgen工具写完了。 公司的项目emax-rpcapi-list依赖了enumgen后,IDEARebuild Project时,或者maven package/install的时候,出现报错→Information:java: java.lang.Assertion ......

Can not set java.lang.String field com.jsedc.log.pojo.entity.voSyslogV0.happenTime to java.util.LinkedHashMap

未加泛型约束的result,其List中的实体对象会被序列化为LinkedHashMap,实际结构为Result<List<LinkedHashMap<String,String>>> 导出excel时对象赋值失败 ......

剑指 Offer 07. 重建二叉树(java解题)

leetcode《图解数据结构》剑指 Offer 07. 重建二叉树(java解题)的解题思路和java代码,并附上java中常用数据结构的功能函数。 ......
Offer java 07

Java开发学习(四十九)----MyBatisPlus更新语句之乐观锁

1、概念 在讲解乐观锁之前,我们还是先来分析下问题: 业务并发现象带来的问题:秒杀 假如有100个商品或者票在出售,为了能保证每个商品或者票只能被一个人购买,如何保证不会出现超买或者重复卖 对于这一类问题,其实有很多的解决方案可以使用 第一个最先想到的就是锁,锁在一台服务器中是可以解决的,但是如果在 ......
MyBatisPlus 语句 Java

Java:数据表的字段设计了默认值0不生效的原因

在数据表里给字段设置了默认值为0,但是在插入的时候不生效,数据表设计如下 通过数据表生成的实体类 查看代码 @Data @TableName(value = "user") @NoArgsConstructor @AllArgsConstructor public class UserEntity{ ......
数据表 字段 原因 数据 Java

带你深入Java Log框架,彻底搞懂Log4J、Log4J2、LogBack,SLF4J

最近系统被扫出来还在使用老旧的log4j,需要升级到最新的log4j。但是在升级的发现,Java相关的日志处理库有log4j, log4j2,slf4j和logback,初一看确实有点头大,那么区别是啥呢?之前也大概知道一些,查找了大量相关资料,这里好好总结一下,相信你读完就会熟练掌握 Log4J、 ......
Log Log4 框架 4J LogBack

Tars-Java网络编程源码分析

作者:vivo 互联网服务器团队- Jin Kai 本文从Java NIO网络编程的基础知识讲到了Tars框架使用NIO进行网络编程的源码分析。 一、Tars框架基本介绍 Tars是腾讯开源的支持多语言的高性能RPC框架,起源于腾讯内部2008年至今一直使用的统一应用框架TAF(Total Appl ......
网络编程 Tars-Java 源码 网络 Tars

Java多线程开发CompletableFuture的应用

​做Java编程,难免会遇到多线程的开发,但是JDK8这个CompletableFuture类很多开发者目前还没听说过,但是这个类实在是太好用了,了解它的一些用法后相信你会对它爱不释手(呸渣男,咋对谁都爱不释手呢),好了我先简单举个列子,告诉你用它有多好。Single Dog拿一个Appointme ......
CompletableFuture 线程 Java

Java中的String类真的不可变吗?java面试常见问题

其实在Java中,String类被final修饰,主要是为了保证字符串的不可变性,进而保证了它的安全性。那么final到底是怎么保证字符串安全性的呢?接下来就让我们一起来看看吧。 一. final的作用 1. final关键词修饰的类不可以被其他类继承,但是该类本身可以继承其他类,通俗地说就是这个类 ......
常见问题 常见 String 问题 Java

小知识:SQL Monitor Report的使用

在上一篇 优化利器In-Memory开启和效果 中,提到的两个SQL对比,使用的是传统的dbms_xplan.display_cursor方式来查看执行计划,好处是文本输出的通用性强,基本信息也都有。 但如果大家参加过我们的RWP培训,就会发现O原厂强烈推荐大家使用的一个工具是 SQL Monito ......
Monitor 知识 Report SQL

DevOps|研发效能不是老板工程,是开发者服务

有人说研发效能是老板工程。不是的,研发效能不是老板工程,它不直接服务于老板(虽然老板可能看一些报表),反而是服务于广大产研运(产品+研发+质量+运维)的同学,所以有的公司也把研发效能叫做基础中台,平台工程,开发者服务团队,或者叫开发者服务平台。做好研发效能,做好开发者中台,就容易把公司的各种中后台能 ......
开发者 效能 老板 DevOps 工程

自己动手从零写桌面操作系统GrapeOS系列教程——19.硬盘读写理论知识

学习操作系统原理最好的方法是自己写一个简单的操作系统。 一、硬盘控制器 我们前面已经讲过硬盘控制器是一种I/O接口,CPU通过它就能间接的读写硬盘。硬盘控制器主要有IDE和SATA两种,我们这里只考虑IDE控制器。 电脑里硬盘控制器有2个,一个叫主控制器,另一个叫从控制器。而每个硬盘控制器能连接两个 ......
桌面 硬盘 GrapeOS 理论 教程

python基础篇:Python基础知识,帮助初学者快速入门

Python`是一种高级编程语言,它易于学习和使用,因此成为了许多人的首选编程语言。本文将介绍`Python`的基础知识,以帮助初学者快速入门。 ......
基础 初学者 基础知识 知识 python

Java项目是不是分布式,真有那么重要吗?

大家好,我是3y啊。 大概不知道从什么时候,「微服务」「分布式」这两个词又再次频繁出现在我的视线里。 「微服务」「分布式」在我刚毕业的时候还是比较关注的,那时候还入门了一把SpringCloud,写了一篇很长的文章,还是很顶的,有不少的大号都给我转载了,在知乎又获得了很多的赞。 那时候觉得懂「分布式 ......
分布式 项目 Java

如何通过Java更改Word中的页面大小和页面方向

新建的 Word 文档,默认纸张为 A4 纸,大小为 21 厘米 × 29.7 厘米,没特殊要求的文档用 A4 纸即可,但有时文档中的内容比较宽,需要用比 A4 纸更宽的纸张,例如制作一些宽的表格,就需要选择宽的纸张;另外,如果要制作一些法律类、信封类、信纸类等的文档,需要选择相应的纸张。那么如何更 ......
页面 大小 方向 Java Word

如何通过Java代码在Word中创建可填充表单

有时候,我们需要制作一个Word模板文档,然后发给用户填写,但我们希望用户只能在指定位置填写内容,其他内容不允许编辑和修改。这时候我们就可以通过表单控件来轻松实现这一功能。本文将为您介绍如何通过Java代码,以编程方式在Word中创建可填充表单。下面是我整理的步骤及方法,并附上Java代码供大家参考... ......
表单 代码 Java Word

某大厂面试题:说一说Java、Spring、Dubbo三者SPI机制的原理和区别

大家好,我是三友~~ 今天来跟大家聊一聊Java、Spring、Dubbo三者SPI机制的原理和区别。 其实我之前写过一篇类似的文章,但是这篇文章主要是剖析dubbo的SPI机制的源码,中间只是简单地介绍了一下Java、Spring的SPI机制,并没有进行深入,所以本篇就来深入聊一聊这三者的原理和区 ......
原理 机制 Spring Dubbo Java

【MySQL速通篇001】5000字吃透MySQL部分重要知识点

MySQL主键和外键知识点 | 主键的概念 | 主键的创建 | desc 表名 | show create table 表名; | 自增列起 始值设置 | 设置自增列初始值语句 | 自增列步长设置 | 唯一索引知识点 | 创建唯一索引的方式 | 外键变种 详细知识点 | 什么是外键变种 | 外键变种... ......
通篇 MySQL 知识点 部分 知识

常用的Java开发工具比较

市场上Java 开发常用的编辑器可谓是琳琅满目,令人眼花缭乱,甚至让人难以抉择。所以今天挑选了几款主流的编辑器进行介绍,都是功能比较丰富的IDE,至于大神使用的普通文本编辑器就不再此次考虑范围内,主要介绍IntelliJ IDEA、Eclipse、NetBeans、Visual Studio Cod ......
开发工具 常用 工具 Java

Java处理正则匹配卡死(正则回溯问题)

正则匹配卡死怎么来的? 背景 背景:这次问题的背景是项目上遇到了,在使用正则对数据进行提取时,发现提取不到,日志解析不成功,造成kafka消息有积压 项目现场问题 项目中某一个微服务再处理正则时,发现在处理部分日志时候,线程会卡死,线程卡死,因此kafka中的消息定会积压,后面的日志即不会处理。关键 ......
正则 问题 Java

nacos实现Java和.NetCore的服务注册和调用

用nacos作为服务注册中心,如何注册.NetCore服务,如何在Java中调用.NetCore服务呢?可以分为下面几个步骤: 0.运行nacos 1.开发.net core服务,然后调用nacos提供的.net core sdk注册服务。 2.开发Java服务,然后注册服务。 3.用RestTem ......
NetCore nacos Java

三天吃透Java并发八股文!

本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点,欢迎star~ Github地址:https://github.c ......
八股文 八股 Java