标签:zab

Java

mybatis缓存,从一个“灵异”事件说起

1

xubiao.zhuang 发布于 2020-04-02

刚准备下班走人,被一开发同事叫住,让帮看一个比较奇怪的问题:Mybatis同一个Mapper接口的查询方法,第一次返回与第二次返回结果不一样,百思不得其解! 问题 Talk is cheap. Show me the code. 该问题涉及的主要代码实现包括 mapper接口定义...

阅读(4)评论(0)赞 (0)

Java

Java – 五大集合(数据结构)要点

4

likai 发布于 2020-04-02

1. List 1.主要问题 了解一下ArrayList和CopyOnWriteArrayList的 增删改查 实现原理 看看为什么说ArrayList查询快而增删慢? CopyOnWriteArrayList 与 Vector 的选择 LinkedList 与 ArrayLis...

阅读(8)评论(0)赞 (0)

Java

设计模式 – 事件监听者模式 – JDK & Spring & Guava 各有千秋

1

zhuangli 发布于 2020-04-02

​ 何为事件监听者模式 ? ​ 第一就是为啥我强调事件二字 ,因为他是目标 . 在我们开发中绝对见到过一堆后缀是 Listener 的类, 这个就是监听者模式, 监听者模式是一种 CS开发架构 ,很好的做了一种设计的解耦,监听者注册到一个邮局中,订阅某种事件(提前说好了), 邮局...

阅读(8)评论(0)赞 (0)

Spring

瞬间几千次的重复提交,我用 SpringBoot+Redis 扛住了!

5

dulong 发布于 2020-04-02

转载自: jianshu.com/p/c806003a8530 前言 在实际的开发项目中,一个对外暴露的接口往往会面临很多次请求,我们来解释一下幂等的概念: 任意多次执行所产生的影响均与一次执行的影响相同 。按照这个含义,最终的含义就是 对数据库的影响只能是一次性的,不能重复处理...

阅读(11)评论(0)赞 (0)

Spring

spring boot 引起的 “堆外内存泄漏”

15

xiaoli.wang 发布于 2020-04-02

背景 组内一个项目最近一直报swap区域使用过高异常,笔者被叫去帮忙查看原因。发现配置的4G堆内内存,但是实际使用的物理内存高达7G,确实有点不正常,JVM参数配置是: -XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=256M -XX:+A...

阅读(4)评论(0)赞 (0)

Java

15. SSM AOP环绕通知注解实现日志

wenming.gapo 发布于 2020-04-01

问题分析 当我们在做一个后台管理系统的时候,很多时候都会需要一个专门的日志模块,来记录登录的用户的操作,其一可以便于监测数据变化,其二,也可以记录用户做的一些操作,便于我们追根溯源,其三,当我们系统出现问题的时候,也可以通过查看日志,找出问题出在哪里,比如Tomcat Local...

阅读(19)评论(0)赞 (0)

Java

大型Java进阶专题(五) 设计模式之单例模式

1

likai 发布于 2020-04-01

前言 ​ 今天开始我们专题的第四课了,最近公司项目忙,没时间写,今天抽空继续。上篇文章对工厂模式进行了详细的讲解,想必大家对设计模式合理运用的好处深有感触。本章节将介绍:单例模式与原型模式。本章节参考资料书籍《Spring 5核心原理》中的第一篇 Spring 内功心法(Spri...

阅读(12)评论(0)赞 (0)

Java

Mybatis 使用的 9 种设计模式,真是太有用了~

15

尖兵 发布于 2020-04-01

虽然我们都知道有26个设计模式,但是大多停留在概念层面,真实开发中很少遇到,Mybatis源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,能够更深入的理解设计模式。 Mybatis至少遇到了以下的设计模式的使用: Builder模式,例如SqlSessionFac...

阅读(14)评论(0)赞 (0)

Java

从零开始学习fastjson反序列化

2

darida 发布于 2020-03-31

fastjson使用简介 fastjson项目地址: https://github.com/alibaba/fastjson 用来实现Java POJO对象与JSON字符串的相互转换,比如: User user = new User(); user.setUserName(&qu...

阅读(19)评论(0)赞 (0)

Java

从零开始学习fastjson反序列化

2

wenming.gapo 发布于 2020-03-31

fastjson使用简介 fastjson项目地址: https://github.com/alibaba/fastjson 用来实现Java POJO对象与JSON字符串的相互转换,比如: User user = new User(); user.setUserName(&qu...

阅读(16)评论(0)赞 (0)

Java

Spring Boot中的事务是如何实现的

4

wenming.gapo 发布于 2020-03-31

1. 概述 一直在用SpringBoot中的 @Transactional 来做事务管理,但是很少没想过SpringBoot是如何实现事务管理的,今天从源码入手,看看 @Transactional 是如何实现事务的,最后我们结合源码的理解,自己动手写一个类似的注解来实现事务管理,...

阅读(18)评论(0)赞 (0)

Java

[JVM教程与调优] 什么是JVM运行时参数?

20

尖兵 发布于 2020-03-31

我们接着上一章节 [JVM教程与调优] JVM都有哪些参数类型? 的内容继续讲解,这章我们来介绍一下:如何查看JVM运行时参数。这一点十分重要,因为我们在进行JVM参数调优的时候,我们首先得知道目前系统运行的值是什么,然后相应的根据相关参数进行调优。 1.-XX:+PrintFl...

阅读(14)评论(0)赞 (0)

Java

Optional 是个好东西,你会用么?| 原力计划

11

xiaoli.he 发布于 2020-03-31

作者 | BoCong-Den 责编 | 夕颜 封图 | CSDN下载自东方IC 出品 | CSDN(ID:CSDNnews) 写在前面 从 Java 8 引入的一个很有趣的特性是 Optional 类。Optional 类主要解决的问题是臭名昭著的空指针异常(Null...

阅读(12)评论(0)赞 (0)

Java

今天,我去面试了

6

尖兵 发布于 2020-03-31

前言: 本文为《今天你面试了吗》系列文章的第一篇,采用情景对话的方式还原面试场景,帮助大家梳理常用Java技术栈的知识点,如果喜欢本文章还请转发鼓励,如果反响良好。本公众号 Java后端 会持续更新本系列文章,如有纰漏还请指出。 今 天天气不错,我怀着自信的笑容来到某个大厂的研发...

阅读(17)评论(0)赞 (0)

Java

Mybatis缓存

3

刘莉莉 发布于 2020-03-31

简介 什么是缓存 缓存在我们工作生活中经常被提及,比如“怎么清理浏览器的缓存”,“手机内存不够了,如何删除缓存”,“硬盘的缓存是不是越大越好”等等。 其实这些“缓存”可以分为三类: 硬件缓存:指的是一块芯片,可以被集成到硬盘或 CPU 上。它用来充当硬盘(CPU)与外界接口(通常...

阅读(14)评论(0)赞 (0)

Java

最通俗易懂的 HashMap 源码分析解读

2

小丁 发布于 2020-03-31

关注  “ 未读代码 ” ,不断 与你分享 原创文章 。 HashMap 作为最常用的集合类之一,有必要深入浅出的了解一下。这篇文章会深入到 HashMap 源码,刨析它的存储结构以及工作机制。 1. HashMap 的存储结构 HashMap 的数据存储结构是一个 N...

阅读(12)评论(0)赞 (0)

Java

Java 中的面向对象

likai 发布于 2020-03-31

Java 中的类 Java 中的类有四种(为避免混淆,后文称为“广义类”): 接口 interface – interface 抽象类 abstract class – abstract class 且必须包含抽象方法 abstract method 具体...

阅读(11)评论(0)赞 (0)