![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习笔记
qq_32806781
这个作者很懒,什么都没留下…
展开
-
如何通过JOL工具查看内存布局
【代码】如何通过JOL工具查看内存布局。原创 2022-11-21 10:29:25 · 117 阅读 · 0 评论 -
fastjson解析树结构对象死循环问题
JSON问题解决原创 2022-06-09 21:35:17 · 308 阅读 · 0 评论 -
JDK支持情况
JDK支持情况备注:LTS: 长期支持版本原创 2022-04-27 18:47:30 · 631 阅读 · 0 评论 -
JSON对象与java对象互相转换工具类示例
import com.fasterxml.jackson.annotation.JsonInclude;import com.fasterxml.jackson.databind.DeserializationFeature;import com.fasterxml.jackson.databind.ObjectMapper;import com.fasterxml.jackson.databind.SerializationFeature;import lombok.SneakyThrows;i原创 2021-12-21 13:33:52 · 279 阅读 · 0 评论 -
easyUI按钮
添加添加查找添加添加添加添加添加修改添加删除添加添加添加添加添加添加添加添加添加添加原创 2021-04-25 11:02:15 · 286 阅读 · 0 评论 -
forkjoin使用
static class StockTypeForkJoinTask extends RecursiveTask<List<StoreProducts>> { private Integer size; private List<StoreProducts> storeProductsList; private RedisTemplate redisTemplate; private static .原创 2021-03-23 10:00:50 · 87 阅读 · 0 评论 -
关于JAVA对象大小问题
对象内存中可以分为三块区域:对象头(Header),实例数据(Instance Data)和对齐填充(Padding),以64位操作系统为例(未开启指针压缩的情况)Java对象布局如下图所示:以64位操作系统为例,new Object()占用大小分为两种情况:未开启指针压缩 占用大小为:8(Mark Word)+8(Class Pointer)=16字节开启了指针压缩(默认是开启的) 开启指针压缩后,Class Pointer会被压缩为4字节,最终大小为:8(Mark Wo原创 2021-03-08 10:39:29 · 170 阅读 · 0 评论 -
自定义springboot starter
starter背景Spring Boot目前已经变成了后端开发这必备技能之一,其中一个主要原因是Spring Boot中有个非常重要的机制(starter机制)。starter能够抛弃以前繁杂的配置,将其统一集成进starter,使用的时候只需要在maven中引入对应的starter依赖即可,Spring Boot就能自动扫描到要加载的信息并启动相应的默认配置。starter让我们摆脱了各种依赖库的处理,以及各种配置信息的烦恼。SpringBoot会自动通过classpath路径下的类发现需要的Bea原创 2021-02-25 11:33:24 · 80 阅读 · 0 评论 -
JDK8 Optional使用示例
public class OptionalTest { public static void main(String[] args) { Person person = new Person("zhangsan1", 18); String name = getName(person); System.out.println(name); } private static String getName(Person person) {原创 2021-02-25 10:37:16 · 68 阅读 · 0 评论 -
Java压缩效率优化思路
昨天微信公众号上看到了一篇《Java压缩20M文件从30秒到1秒的优化过程》的文章,记录一下,最后作者的感悟,受教了。可以关注一下原文章链接我没找到(太懒了),加公众号自己去找吧。不废话,直接上代码package com.test;import java.io.*;import java.nio.channels.Channels;import java.nio.channels.FileChannel;import java.nio.channels.WritableByteChann原创 2020-11-13 17:06:38 · 1006 阅读 · 0 评论 -
基于JSR303参数验证-demo
参考大佬们写的案例,简单做了一个demo,基于JSR303的参数验证,代码包含@NotNull与验证group的基础使用以及自定义的验证的使用代码如下启动类import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;/** * @Description: * @Author YDH * @Date 2020/10/1原创 2020-11-13 16:03:44 · 96 阅读 · 0 评论 -
git rebase 使用
git因为种种原因多次提交之后,通过push推送代码会出现如下情况点击push会将多次提交的tag推送到分支上,可以在push之前使用rebase命令合并多次commit在命令窗口输入命令 git log 如下,可以看到提交的日志以及版本号现在开始合并test3 与test2 的commit,有两种方式,一种通过HEAD合并,另一种通过commitid合并。已HEAD合并为例子输入命令 git rebase -i HEAD~2HEAD~2 代表合并最近两次的提交。截图如下:蓝色框中为待编原创 2020-10-30 18:01:12 · 212 阅读 · 0 评论 -
包的内聚性三原则、包的耦合性原则
一、包的内聚性三原则:原则用途:用来指导软件开发者如何将类合理的划分到相应的包中。前提条件:我们已经设计好了一些类,并且它们之间的相互关系也基本明确。由此可见,类的设计先于包的设计,实际开发中我们确实是采用“自底向上”的方式设计和规划包的。(1)重用发布等价原则 REP(Reuse-Release Equivalence Principles) 任何一个开发者都知道,我们对源代码的重用必须是基于包的,如果那个人说某个单独的类可以重用,那完全是外行人说的。 可重用的包必须包含可重用的类。(2原创 2020-10-21 16:29:14 · 1466 阅读 · 0 评论 -
MessageFormat日常使用
先来一波代码public class MessageFormatTest { public static void main(String[] args) { //ArgumentIndex必须是非负整数,它的个数不只限于0到9这10个,它可以用0到9的数字组成,因此可以有好多个, String msg = "{0}{1}{2}{3}{4}{5}{6}{7}{8}"; Object [] array = new Object[]{"A","B",原创 2020-09-18 09:39:58 · 244 阅读 · 0 评论 -
MDC使用
MDC(Mapped Diagnostic Contexts)映射诊断上下文,主要用在做日志链路跟踪时,动态配置用户自定义的一些信息,比如requreqiestId、sessionId等等。MDC使用的容器支持多线程操作,满足线程安全。使用示例:此处示例为请求日志拦截中的设置requreqiestIdpublic Object aroundReq(ProceedingJoinPoint joinPoint) throws Throwable { MethodSignature meth原创 2020-09-17 18:53:28 · 313 阅读 · 0 评论 -
@Autowired 注解用在方法与属性上区别
@Autowired 注解实现依赖注入的以上两种实现方式的区别:当将 @Autowired 注解直接写在成员变量上时,即使设定该成员变量的访问权限为private,那么也会自动将其改变成public;而将 @Autowired 注解写在成员变量的 setter 方法上则不会出现此问题。参考:https://blog.csdn.net/GavinLi2588/article/details/103483634...原创 2020-09-16 17:21:19 · 2275 阅读 · 0 评论 -
来一波hystrix常用配置
Hystrix 默认加载的配置文件 - 限流、 熔断示例线程池大小hystrix.threadpool.default.coreSize=1缓冲区大小, 如果为-1,则不缓冲,直接进行降级 fallbackhystrix.threadpool.default.maxQueueSize=200缓冲区大小超限的阈值,超限就直接降级hystrix.threadpool.default.queueSizeRejectionThreshold=2执行策略资源隔离模式,默认thread。 还有一种叫信号原创 2020-08-28 17:19:15 · 1140 阅读 · 0 评论 -
oracle 查询sql记录及command_type对应表
SELECT a.machine,c.username,a.program,b.sql_text,b.sql_idFROM dba_hist_active_sess_history aJOIN dba_hist_sqltext bON a.sql_id = b.sql_idJOIN dba_users cON a.user_id = c.user_idWHERE b.command_type = ‘15’ORDER BY a.sample_time DESC;/*参照Command_原创 2020-08-24 09:49:01 · 1080 阅读 · 0 评论 -
spring ioc继承与java对象继承的区别
Spring 中的子类 Bean 和父 Bean 可以是不同类型 , 但是 Java 中的继承则可保证子类是一种特殊的父类 ;Spring 中 Bean 的继承时实例之间的关系 , 因此主要表现为参数值的延续 ; 而 Java 中的继承是类之间的关系 , 主要表现为方法和属性的延续 ;Spring 中的子 Bean 不可作为父 Bean 使用 , 不具备多态性 ; 而 Java 中的子类实例完全可以当成父类实例来使用 ....原创 2020-08-20 21:36:12 · 161 阅读 · 0 评论 -
Spring 事务的传递性介绍-概念
一: Spring 事务的传递性介绍事务传播行为,所谓事务的传播行为是指,如果在开始当前事务之前,一个事务上下文已经存在,此时有若干选项可以指定一个事务性方法的执行行为。在TransactionDefinition定义中包括了如下几个表示传播行为的常量:TransactionDefinition.PROPAGATION_REQUIRED:如果当前存在事务,则加入该事务;如果当前没有事务,则创...原创 2020-04-27 20:56:24 · 467 阅读 · 0 评论 -
docker-compose构建zookeeper集群
docker-compose:(3.5版本zookeeper)version: '2'services: zoo1: image: zookeeper restart: always ports: - "2181:2181" volumes: - /usr/zookeeper...原创 2020-04-22 10:58:27 · 100 阅读 · 0 评论 -
NIO学习笔记
NIO Reactor原创 2020-02-05 23:49:42 · 93 阅读 · 0 评论