用Jdk17的风格书写代码 我想通过Java不同版本的编程特性去解决一下开发中会遇到的问题,帮我们快速理解和学习新特性,后续我会不断的收集和补充这些问题,目前比较可惜的是我还没有对不同的jdk版本的单元测试代码进行banchmark…… Q1:在给定的字符串中取出出现次数Top3的字母,但是可能会出现并列情况,所以我们的结果应该是[k=[char1,chat2,……],……] A:jdk8之前 123456789 2023-08-12 java #练习
代码美学 最近我写的代码被同事code review时一直被吐槽,而我发现确实存在各种各样的问题,所以我打算把这些都给记录下来,以后不断改进 1.正确的命名 有一句老话说的好:计算机科学有两件难事,一是缓存失效,二是取名。我对第二点深有体会,所以我记录了一下取名的一些规范 尽量避免使用单个字母去给变量命名,这会使变量失去相关信息12345678910public sealed class People 2022-08-13 Others #规范
Springboot应用镜像构建 容器 ——云原生的基石 一个SpringBoot应用的上云其实很简单,我们只需要将打出来的jar包放入一个带有jdk环境的Docker基础镜像中运行起来就行。但是如果我们深入思考真的是这样吗?简单的复制jar包在容器中运行总是会比运行解压之后的文件多一些的开销,而在容器化环境中,这种开销是很明显的。另一个问题是,把应用程序的代码和它的所有依赖放在Docker镜像的一个层中并不是优雅的做法,由于 2022-11-20 spring #cloud native
Python魔法方法 魔法方法(Magic Methods)是Python中的内置函数,一般以双下划线开头和结尾,例如__init__、__del__等。之所以称之为魔法方法,是因为这些方法会在进行特定的操作时会自动被调用,魔法方法大致分为如下几类:构造与初始化、类的表示、访问控制、比较、运算等操作、容器类操作、可调用对象、序列化类。在这里我记录一下它的常用魔法方法 123# 查看魔法方法magic = dir(&qu 2022-09-17 python #练习
Java Flight Recorder Java Flight Recorder (JFR) 是一种用于收集、诊断和分析有关正在运行的 Java 应用程序的数据的工具。它集成到Java虚拟机(JVM)中,几乎不会造成性能开销,因此即使在负载较重的生产环境中也可以使用。使用默认设置时,性能影响不到百分之一。对于某些应用程序,它可能会低得多。但是,对于短时间运行的应用程序(不是在生产环境中运行的应用程序类型),相对启动和预热时间可能会更长 2022-08-25 java > 性能分析 #jvm
好用但不为人知的API 1.好用的集合工厂方法 Collection.of()这些集合的of方法让我们代码变得简单,当我们只想展示我们想要展示的列表或者东西不是很多的场景中使用,这些api都是不可变的,我们知道集合工具类已经帮我们提供了转换成不可变的集合的方法unmodifiableXXX,为什么我们还需要List.of?因为它总是会copy原来的list到新的list,它不是很有效率, 12345678@Testpu 2022-08-12 java #笔记
Jdk8之后各版本常用新特性 JDK10 var 关键字 REP-286 增强 Java 语言,将类型推断扩展到带有初始值设定项的局部变量声明。我们寻求通过减少与编写 Java 代码相关的仪式改善开发人员的体验,同时通过允许开发人员省略通常不必要的局部变量类型的清单声明来保持 Java 对静态类型安全的承诺查询详情 局部变量推断类型,作用在局部代码块中,通过编译器的类型推断来避免频繁的定义一些类型,其目标是作用在局部变量、 2022-08-11 java #笔记
Spring配置文件加密 在配置文件中,往往会有密码,例如mysql,redis等。如果直接将密码和url以明文的形式写在项目中,就会有泄露的风险。所以这里使用jasypt,用于配置文件密。 1.引入依赖(gradle|maven)1implementation 'com.github.ulisesbocchio:jasypt-spring-boot-starter:2.1.0' 12345< 2022-08-10 spring > jasypt #笔记
Maven知识记录 一)初识Maven私服 私服即私有的仓库。maven把存放文件的地方叫做仓库,我们可以理解成我门家中的储物间。而maven把存放文件的具体位置叫做坐标。我们项目中pom.xml文件里引入的jar文件就存放在了maven仓库中。 maven的仓库分两种: 1.本地仓库 我们个人电脑中安装maven时分配的仓库。用于存放我们所有项目中所需的资源文件(多为jar文件)。需要说明的是初次安装maven时 2022-08-03 maven #笔记
ElasticSearch-Tips 这里记录一下es使用经验1.ES资源评估公式 各规格下最大索引速度和查询速度预估 集群规模 3master+n data 连接方式 直连同步写及同步查询 数据量 查询基于320W数据,单条数据1K,索引1个副本、刷新时间1s,其他索引配置默认。 评估依据 基于data节点数的影响结果,预估不同data节点个数时的最大索引速度和查询速度,n为数据节点数。 2021-04-24 工具 #中间件