- 博客(5)
- 收藏
- 关注
原创 java线程
五种状态,running(正常进行),shutdown(不会接收新的任务,先把队列的任务执行完),stop(直接寄),tidying(啥都没有空方法),terminated(真的结束)tomcat可以部署多个类,可能重名,默认的共用类加载器的时候只会加载一个,使用自定义加载器就可以每一个类都可以加载出来,把应用应用之间相互隔离。需要缓存到线程的时候可以使用,比如说判断是否同一个线程里用户是否为同一个可以使用这个方法,记得每次往线程里面存完到用完之后要remove。tomcat为什么要使用自定义加载器。
2023-11-20 14:27:01 41 1
原创 springboot原理
答:创建容器,然后扫描包,启动tomcat,接收所有请求,给tomcat的dispatcherServlet处理,去容器找到controller对应的接口。答:首先创建一个新的容器,然后注册,register把整个类传进去,refresh扫描一遍。答:启动tomcat开启服务器,启动springmvc让数据在页面展示。问:@componentScan扫描启动类的包路径对还是错。问:springboot的run方法能什么?答:错,扫描的当前解析的传进去当作包路径。问:创建Spring容器前面做了什么。
2023-11-20 13:50:07 35 1
原创 常见面试题:java有几种创建线程方式
1.1: 只有一种继承Thread 然后重写run方法,重写得run方法不是start方法,缺点单继承不能做其他东西 都是实现runable接口。1.2 实现runable接口,重写run方法,用时候用new thread()调用start方法。1.3实现callable,可以开启一个线程。1.4利用线程池创建线程。
2023-11-19 13:53:49 36
原创 Redisson锁重试和看门狗机制
一开始lock.trylock(long waitTime,long leaseTtme,TimeUnit unit)里面有三个参数,第一个最大等待时长(会在这时间不断尝试,变成可重试的锁),第二个锁自动失效的时间,第三个是时间单位。lua脚本获取锁,获取锁成功返回nil,获取失败返回锁的剩余有效期。默认的锁超时时间是30秒。
2023-11-12 16:55:02 151 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人