![](https://img-blog.csdnimg.cn/20210330175319539.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java知识点
分类java知识
鞠晓健
这个作者很懒,什么都没留下…
展开
-
hutool DateUtil 使用
1、offsetDay标识偏移量,参数前面是当前时间,后边是偏移量,正数标识+1 负数表示 -1原创 2021-11-24 09:21:35 · 176 阅读 · 0 评论 -
Mysql调优
性能监控1、通过show profile 查看多条sql执行之后查看show profile 这个是查看最近执行的一句sqlshow profile for query Query_ID(执行sql的ID)查看第几个执行的sql执行命令set profiling = 1show profiles查看sql的执行时间show profile查看sql详细的执行时间show profile在低版本中使用,高版本使用的是 preformance_s.原创 2021-03-23 22:11:33 · 125 阅读 · 2 评论 -
JVM
CLass加载过程:loading:加载加载阶段使用的是双亲委派:1、有缓存提高效率;2、处于安全考虑class加载会先查询缓存(一个list或者map),缓存没有才会查询下一个加载器。缓存中有的话就不进行下一步。为什么使用双亲委派?1、避免重复加载,因为父亲已经加载过了,没有必要儿子再加载一遍。2、处于安全考虑:如果随意定义的的类型随意替代java核心的API会存在安全隐患,在加载自定义的加载器的时候首先会寻找APP,APP中没有那么会向上寻找,这个就是类加载器的未派机制。原创 2021-03-23 10:34:49 · 90 阅读 · 0 评论 -
前端
ajax请求过程ajax同步异步的区别原创 2021-01-13 20:55:51 · 89 阅读 · 0 评论 -
多线程
线程池synchronized 和 Locksynchronized : JVM 层面线程获取monitor的锁,如果为0 说明没有人获取锁,这个线程就会获取锁,然后计数为1,不为0,说明线程已经获取了,这个线程就必须阻塞等待cascompare and set 1、读取值 2、对比 3、 修改;如果读取的值跟自己的一样,就修改; ABA 线程1和线程2读取内存中的值 1 ,线程2修改值为2 然后线程2又将值修改为1 ,这个时候线程1读取的时候是1根自己的一样; ...原创 2020-06-27 22:15:40 · 280 阅读 · 0 评论 -
面试之消息队列
面试官 : 为什么使用消息队列PS : 一般这么问首先是你简历中写了你项目中使用过消息队列,其次是单纯的考察你消息队列的一些基础的问题回答的时候首先是知道消息队列的作用 : 解耦 、异步 、 削峰解耦 、异步 不需要解释 ;削峰 就是说错过高峰期,等到错过之后再一步一步的消化掉请求;比如说双十一的时候,提交订单的人很多,1-2s内大量的请求出现,在提交订单之后会出现卡顿或者说加载中的情况,其实就是错开高峰期,一步一步的消化掉大量的请求。案例 :我们项目是在下发短信和邮件的时候使...原创 2020-06-24 22:12:06 · 216 阅读 · 0 评论 -
啥
1、springboot的运行机制是什么样的2、mybites二级缓存是怎么开启的3、redis 穿透 击穿 雪崩4、springcloud 组件地址5、spring springboot springmvc 区别6、springmvc 执行流程7、mybtes 动态拼接语句8、redis 使用过的数据类型9、redis淘汰策略、持久化10、线程池11、 jvm 内存模型12、cookie 可以存储对象嘛?session可以吗?不可以13、事物.原创 2020-06-17 15:18:17 · 166 阅读 · 0 评论 -
集合
集合平时用的比较多的有哪些?这个就是详细说下结合Conllection 下 有arrayList 和 LinkListSet下 是HasnSetMap hanshMap 线程安全的话 是ConcurrenHashMap1、ListArrayList 和 LinkList 适用于什么场景arrayList实现是一个数组,线程不安全,适用于多读取少插入的场景linkList是基于双向链表的实现,带有头结点还有尾节点的,适用于一些插入、删除频繁的操作,查询会比较慢vector是线程安..原创 2020-06-14 14:53:31 · 135 阅读 · 0 评论 -
面试
java8的新特性1、lambda表达式2、streamSynchronized和 Lock 底层实现原理线程池mysql 索引spriung优点double幂等重复支付HashMap数据库结构原创 2020-06-12 20:33:48 · 145 阅读 · 0 评论 -
消息队列
首先是为什么使用消息队列消息队列优点 : 异步 、解耦 、削峰缺点 :1、系统可用性降低万一MQ挂掉导致系统崩溃;RabbitMQ 有三种模式 : 单机、普通集群、镜像集群单机就是一个MQ在跑 普通就是多个MQ在跑,每一个MQ都是复制过去的、一样的;多台机子上启动多个MQ实例 镜像集群模式就是你创建的Queen无论是数据元还是消息数据都存在多个实例当中,每次写消息到queue的时候,都会吧消息自动到多个queue中消息同步 坏处就是性能消耗太大、扩展性低:就算是新增queue还是复制原创 2020-06-09 00:10:40 · 159 阅读 · 0 评论 -
一
地址1、什么是分布式分布式是把不同的业务分配到不同的机子上去;springcloud微服务,把不同的模块做成不同的服务独立运行;2、springcloud 组件eurka 注册中心ribbon 客户端负载均衡hystrix 容错feign 服务调用zuul 网关config 配置中心3、shiro4、jwt5、分布式事务6、redis 双写一致性7、分布式锁8、数据库优化9、分库分表===============================...原创 2020-06-06 22:29:12 · 297 阅读 · 0 评论 -
springMVC
SpringMVC的流程?(1)用户发送请求至前端控制器DispatcherServlet;(2) DispatcherServlet收到请求后,调用HandlerMapping处理器映射器,请求获取Handle;(3)处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet;(4)DispatcherServlet 调用 HandlerAdapter处理器适配器;(5)HandlerAdapter 经过适配调用 具体处原创 2020-06-03 18:32:51 · 77 阅读 · 0 评论 -
java
forward和redirect是什么?forward 转发 浏览器重新请求数据 数据不共享redirect 重定向 内部重定向 服务器直接访问客户端不知道 共享数据原创 2020-06-03 18:32:44 · 114 阅读 · 0 评论 -
jpa
jpa 模型原创 2020-06-03 16:48:37 · 70 阅读 · 0 评论 -
springcloud
组件eurekazuulribbonconfig原创 2020-06-03 16:50:50 · 241 阅读 · 0 评论 -
Mysql
索引高效帮助数据库获取数据的一种数据结构,主要支持 hasg 和 B+treehash 对范围查询不支持B+Tree 支持范围查询索引提高查询 插入删除就会牺牲 数据的变更会重新维护索引结构带来大量的IO开销,索引创建的时候 对于唯一性差,会经常更改的字段不建立索引,对于唯一性高,作为过滤、排序、查询条件的字段可以建立索引,每一张最多建立对16个字段建立索引,索引失效...原创 2020-06-03 16:47:16 · 245 阅读 · 0 评论 -
redis
缓存穿透redis 中数据都是从数据库中获取,穿透是因为redis中没有查询到,在数据库中也没有查询到,结果就是数据库中没有这一条数据放到redis中 ,那么每次查询都是查询不到,数据库中也没有数据,就形成一个恶性循环如果大量的访问出现这种情况对数据库压力很大解决 :这个数据没有的话,在redis中存储这个key,返回一个null如果有一个IP频繁的一直访问这个key 的话 可以判定他是恶意的,监控这个IP,操作这个IP缓存雪崩查询redis的时候 大量的key 同一时间都过期了,结果就是请..原创 2020-06-03 16:49:52 · 852 阅读 · 0 评论 -
Mybites
mybites 二级缓存在配置文件中开启二级缓存,在mapper中打上catch标签就可以了原创 2020-06-03 16:49:40 · 281 阅读 · 0 评论 -
springboot
springboot 运行机制@SpringbootApplication 就是spring中 @Configuration 标注为配置类@CompanentScan spring下注解 指定需要装配的组件 注册到容器中@EnableAutoConfigurante 开始自动配置核心 @AutoConfigurantePackage 将主类所在的包作为自动配置的包进行管理 @Import 导入一个类到IOC容器中 根据mate-inf 下spri...原创 2020-06-03 16:49:28 · 272 阅读 · 0 评论 -
spring
AOP与OOP(面向对对象编程相比,OOP会散落到代码的各个部分,难以维护,AOP把这些问题与主业务逻辑分开,与主业务逻辑解耦IOC 实现是使用Map 根据name进行获取@EnableAspectJAutoPeoxy@Aspect@Pointcut日志权限事物java动态代理使用接口默认是接口 其他的是CGlib@ComponentAnnotationConfigApplicationContext使用AnnotationConfigAp...原创 2020-06-03 16:49:16 · 637 阅读 · 0 评论