- 博客(10)
- 资源 (1)
- 收藏
- 关注
原创 浅析jvm组成部分和垃圾回收机制
本文主要是自己最近学习jvm做的笔记,里面的内容参考了很多其他大佬的文章,自己主要是总结记录一下;直接盗用一张图:1.方法区-XX 设置方法区的大小1.1 方法区内存方法区属于线程共享的内存区域,在jvm启动的时候被创建,jdk1.8之前,方法区的实现叫永久代,使用的是堆内存,容易导致内存溢出,比如spring或者mybatis框架大量使用动态代理加载类,就可能会导致方法区内存溢出;jdk1.8之后呢,是元空间,使用的系统内存,一般系统内存会比较大,不容易溢出;当方法区无法满足内存分
2022-05-07 16:26:57 352
原创 详解Spring IOC属性注入、Bean的作用域和@Autowired、@Qualifier、@Resource区别
主要是谈点自己对spring 的个人见解
2022-04-09 22:51:26 1145 1
原创 深入理解@Transactional注解的使用和原理
@Transactional声明式事务的具体使用方法这里不再重复说明,大家可以参考上一篇文章;本文主要是带着大家一起看一下@Transactional注解的源码,包括传播机制的实现;测试案例:下面这两个方法是不同类之间方法调用,并且都加了@Transactional注解的; @Transactional public void methodA(){ userMapper.selectById("jzcs"); infoService.methodB
2022-04-01 21:39:19 6354
原创 过滤器Filter原来还能这样用
相关概念也就不去讨论了,网上相关文章就有很多,本文主要是想通过过滤器实现一些拦截功能并顺带验证一下两个问题:1.过滤器能不能通过@Order或者实现Ordered接口达到多个自定义过滤器排序的目的?2.过滤器当中到底能不能使用@Autowired注入并使用spring的资源?需求:我们的接口,有时是不需要token校验的,比如定时服务feign调用一些外部服务,定时服务根本没有当前登录人,也就不存在token,所以我们需要对这些服务的访问直接放行或者强制给header里面添加一个token;.
2022-03-21 21:36:30 344
原创 @Transactional的四种隔离级别测试
不知道大家有没有想过数据库的事务隔离级别和@Transaction设置的隔离级别到底是什么关系?数据库设置的高隔离级别,@Transaction设置低隔离级别,那么事务的隔离级别到底以谁的为主?下面就让我们一起去用代码研究一下首先我们mysql数据库的默认隔离级别是read-commit读已经提交;那么我们先测试@Transactional(isolation = Isolation.READ_UNCOMMITTED) 读未提交;先上测试代码@Servicepublic clas
2022-03-17 18:29:21 5859 1
原创 线程池+Callable+FutureTask实现多线程
关于线程池就不做太多介绍,相关文章有很多,本文重点是记录自己测试线程池+Callable+FutureTask实现多线程的代码,大家可以参考参考;public class threadPoolTestService { public void test(){ //创建线程池 ExecutorService executorService = Executors.newFixedThreadPool(5); //线程安全的AtomicInteger
2022-03-15 20:13:19 499
原创 springboot+aop+自定义注解实现token校验
1.在 pom.xml 中引入响应的依赖模块;<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>2.新建一个自定义注解类,加了这个注解的方法就表示切入点,即目标方法;import java.lang.annotation.D
2021-12-13 19:44:25 695
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人