24个写出漂亮代码的小技巧

这篇文章我会总结一些实用的有助于提高代码质量的建议,内容较多,建议收藏! 内容概览: 提取通用处理逻辑 注解、反射和动态代理是 Java 语言中的利器,使用得当的话,可以大大简化代码编写,并提高代码的可读性、可维护性和可扩展性。 我们可以利用 注解 + 反射 和 注解+动态代理 来提取类、类属性或者

【数据结构和算法】Trie树简介及应用详解

Trie树,即字典树,又称单词查找树或键树,是一种树形结构,典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。

基于Spring Cache实现Caffeine、jimDB多级缓存实战

在早期参与涅槃氛围标签中台项目中,前台要求接口性能999要求50ms以下,通过设计Caffeine、ehcache堆外缓存、jimDB三级缓存,利用内存、堆外、jimDB缓存不同的特性提升接口性能, 内存缓存采用Caffeine缓存,利用W-TinyLFU算法获得更高的内存命中率;同时利用堆外缓存降低内存缓存大小,减少GC频率,同时也减少了网络IO带来的性能消耗;利用JimDB提升接口高可用、高并

京东LBS推荐算法实践

现有的同城购业务围绕京东即时零售能力搭建了到店、到家两种业务场景。同城业务与现有业务进行互补,利用高频,时效性快的特点,可以有效提升主站复访复购频次,是零售的重要战略方向。

聊聊wireshark的进阶使用功能

emmm,说起网络知识学习肯定离不来wireshark工具,这个工具能够帮助我们快速地定位网络问题以及帮助正在学习网络协议这块的知识的同学验证理论与实际的一大利器,平时更多的只是停留在初步的使用阶段。也是利用部门内部的网络兴趣小组的讨论机会,私下对wireshark的一些进阶功能,比如专家模式、图表等功能进行调研,并结合实际场景抓包分析对功能进行对照说明。

一文看懂研发效能提升

# **1 什么是研发效能?** 对于一个企业来说,最大化企业效能是其必求目标,包括:利润、用户规模、客服满意度、运营效率等。对于自有产品研发的互联网公司来说,研发效能是服务企业效能的重要因素。 一个软件研发的完整流程如下图所示: ![](https://storage.jd.com/shenden

疯一样的向自己发问 - 剖析lsm 索引原理

疯一样的向自己发问 - 剖析lsm 索引原理 lsm简析 lsm 更像是一种设计索引的思想。它把数据分为两个部分,一部分放在内存里,一部分是存放在磁盘上,内存里面的数据检索方式可以利用红黑树,跳表这种时间复杂度低的数据结构进行检索。 而当内存数据到达一定阀值的时候则会将数据同步到一个新的磁盘文件上。

Python 提取PDF文本和图片

从PDF中提取内容能帮助我们获取文件中的信息,以便进行进一步的分析和处理。此外,在遇到类似项目时,提取出来的文本或图片也能再次利用。要在Python中通过代码提取PDF文件中的文本和图片,可以使用 Spire.PDF for Python 这个第三方库。具体操作方法查阅下文。 Python 提取PD

若依(ruoyi)开源系统保姆级实践-完成第一个页面

一、案例描述 若依官网文档地址:http://doc.ruoyi.vip/ruoyi/document/hjbs.html 本教程主要内容,自定义数据库表,使用若依开源系统生成代码并配置权限。 若依环境配置 新建数据表t_user,利用若依代码生成工具生成服务端及页面代码。 菜单配置 权限配置 二、

递归解析Json,实现生成可视化Tree+快速获取JsonPath

内部平台的一个小功能点的实现过程,分享给大家: 递归解析Json,可以实现生成可视化Tree+快速获取JsonPath。 步骤: 1.利用JsonPath读取根,获取JsonObject 2.递归层次遍历JsonObjec,保存结点信息 3.利用zTree展示结点为可视化树,点击对应树的结点即可获取

上周热点回顾(9.25-10.1)

热点随笔: · 在小公司编程是一种什么样的体验? (公众号_陶朱公Boy)· 一个混乱千万级软件项目 (烂人)· 《优化接口设计的思路》系列:第四篇—接口的权限控制 (sum墨)· C#开源且免费的Windows桌面快速预览神器 - QuickLook (追逐时光者)· .NET开发工作效率提升利器

解锁Java面试中的锁:深入了解不同类型的锁和它们的用途

简介 多线程编程在现代软件开发中扮演着至关重要的角色。它使我们能够有效地利用多核处理器和提高应用程序的性能。然而,多线程编程也伴随着一系列挑战,其中最重要的之一就是处理共享资源的线程安全性。在这个领域,锁(Lock)是一个关键的概念,用于协调线程之间对共享资源的访问。本文将深入探讨Java中不同类型

查看docker容器使用的cpu和内存

转载请注明出处: 使用docker ps命令列出正在运行的Docker容器,并获取目标容器的ID或名称。 使用docker stats <容器ID或名称>命令来实时监测指定容器的资源使用情况。该命令将显示容器的CPU利用率、内存使用量、网络流量等信息。 例如,要查看名为my_container的容器

基于Admin.NET框架的前端的一些改进和代码生成处理(2)

在上篇随笔《基于Admin.NET框架的前端的一些改进和代码生成处理(1)》中大致介绍了一些关于对Admin.NET框架的前端的改造工作,主要目的就是希望能够增加代码的简洁和可读性,以及利用代码生成工具来快速生成相关的代码,从而减少开发过程中的繁琐问题。本篇随笔继续探讨一下,对其中一些模块功能进行一些修改调整。

循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发(5) -- 树列表TreeView的使用

在我们展示一些参考信息的时候,有所会用树形列表来展示结构信息,如对于有父子关系的多层级部门机构,以及一些常用如字典大类节点,也都可以利用树形列表的方式进行展示,本篇随笔介绍基于WPF的方式,使用TreeView来洗实现结构信息的展示,以及对它的菜单进行的设置、过滤查询等功能的实现逻辑。

记一次 .NET 某医疗器械 程序崩溃分析

一:背景 1.讲故事 前段时间有位朋友在微信上找到我,说他的程序偶发性崩溃,让我帮忙看下怎么回事,上面给的压力比较大,对于这种偶发性崩溃,比较好的办法就是利用 AEDebug 在程序崩溃的时候自动抽一管血出来,看看崩溃点是什么,其实我的系列文章中,关于崩溃类的dump比较少,刚好补一篇上来,话不多说

基于纯前端类Excel表格控件实现在线损益表应用

财务报表也称对外会计报表,是会计主体对外提供的反映企业或预算单位一定时期资金、利润状况的会计报表,由资产负债表、损益表、现金流量表或财务状况变动表、附表和附注构成。财务报表是财务报告的主要部分,不包括董事报告、管理分析及财务情况说明书等列入财务报告或年度报告的资料。 为了全面系统地揭示企业一定时期的

JavaScript 如何验证 URL

前言 当开发者需要为不同目的以不同形式处理URL时,比如说浏览器历史导航,锚点目标,查询参数等等,我们经常会借助于JavaScript。然而,它的频繁使用促使攻击者利用其漏洞。这种被利用的风险是我们必须在我们的JavaScript应用程序中实现URL验证的原因。 URL验证检查URL是否遵循正确的U

算法学习笔记(12): 线性基

# 线性基 > 熟练掌握异或运算是食用本文的大前提,请读者留意 [TOC] ## 是什么? 是一种利用线性代数的知识,用于解决异或问题的一种手段(不能算作数据结构吧这) > 本文并不会涉及到线性代数。而是从OI基础算法思想的角度阐释线性基。尽管这可能违背了设计该方法的初衷。 一般来说,预处理的时间复

CF1827

# CF1827 ## A. Counting Orders 简单计数。 两个都排序,双指针维护一下 `a[i]` 在 `b[p]` 的位置(`a[i] ## C. Palindrome Partition ~~回文好题~~。 考虑利用 `Manacher` 求出每一个偶数的回文串。 > 参考:[算