自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

鞠晓健

一个走在路上的java

  • 博客(50)
  • 收藏
  • 关注

原创 naocs(一)

spring-cloud-alibab-nacos-discovery服务的注册发现1、服务注册Nacos Client启动会通过Rest请求,将自己 注册到nacos server,nacos server收到请求之后会将元数据信息粗出到Map中2、服务心跳nacos client 定时发送心跳到nacos server,证明是一直启用状态,防止被删除,默认是5s发送一次3、服务同步4、服务发现nacos client 在调用服务的时候,会发送rest请求到nacos se

2022-01-13 21:35:35 291

原创 springboot 自动装配原理

在springBoot启动类上有一个复合注解@SpringBootApplication@SpringBootApplication中有三个注解1、@Configration

2021-12-25 23:51:51 307

原创 springboot 集成redis简单应用

需求redis是每一个公司都需要使用的,之前都是公司集成好之后,自己直接应用,有公司集成好的redisUtils,直接可以对String、list还有map操作,随着工作环境的变化,有些时候公司没有集成,那么就需要自己搞。简单应用新建一个springboot项目,然后集成redis实现可以操作redis集成pom在项目的pom文件中集成redis <!--集成redis--> <dependency> &

2021-12-17 11:39:06 969

原创 ThreadPoolTaskExecutor线程池和@Async异步执行

ThreadPoolExecutor

2021-12-14 23:28:39 3398

原创 亲测解决 :Navigation cancelled from “/xxx“ to “/xxx“ with a new navigation.

解决 Navigation cancelled from “/xxx“ to “/xxx“ with a new navigation

2021-12-12 21:24:07 4490

原创 hutool DateUtil 使用

1、offsetDay标识偏移量,参数前面是当前时间,后边是偏移量,正数标识+1 负数表示 -1

2021-11-24 09:21:35 161

原创 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 120 2

原创 JVM

CLass加载过程:loading:加载加载阶段使用的是双亲委派:1、有缓存提高效率;2、处于安全考虑class加载会先查询缓存(一个list或者map),缓存没有才会查询下一个加载器。缓存中有的话就不进行下一步。为什么使用双亲委派?1、避免重复加载,因为父亲已经加载过了,没有必要儿子再加载一遍。2、处于安全考虑:如果随意定义的的类型随意替代java核心的API会存在安全隐患,在加载自定义的加载器的时候首先会寻找APP,APP中没有那么会向上寻找,这个就是类加载器的未派机制。

2021-03-23 10:34:49 82

原创 LockSupport

线程阻塞的工具类,park:实现阻塞线程;unPark:解除线程阻塞。lockSupport作用是阻塞当先线程 LockSupport.park();一般阻塞线程的方法必须加在一把锁上,使用wait的话得是用sync,锁定对象LockSupport.unpark(Thread);唤醒一个线程使用notify,而这个线程是在一个队列里面。unpark可以先于park调用,表示这个线程可以放行,不需要停用...

2021-03-22 10:24:22 96

原创 springboot自动配置原理

在@SpringBootApplication复合注解中有一个注解是@EnableAutoConfiguration@EnableAutoConfiguration 翻译就是自动配置,同样也是一个复合注解关键功能是@Import注解在AutoConfigurationImportSelector类的父类中有selectImport()方法,通过SpringFactoriesLoader.loadFactoryNames()扫描所有具有META-INF/spring.factories的j

2021-01-22 20:30:12 91

原创 前端

ajax请求过程ajax同步异步的区别

2021-01-13 20:55:51 88

原创 mysql 模糊查询

mapper 文件下编写mysql语句 模糊查询使用like 但是需要拼接 % 使用 concat 关键字 like concat("%", #{key},"%")

2020-10-29 15:28:59 218

原创 HTTP get请求的时候出现缓存的问题

HTTP get请求通常是获取数据,一般看到get的话就是从后台拿数据前端展示使用但是在get请求的时候,不同的浏览器会出现不同的情况:请求数据有时候是304,有时候是200出现这种情况一般是缓存的问题,因为get请求基本就是获取数据,get的时候为了节省时间和空间就直接走缓存,以便于再次请求访问解决办法一般是在get请求后面添加一些随机数,比如说时间戳;这样每次请求都会当做新的请求去访问后台。...

2020-10-11 21:38:42 4332

原创 Mybatis配置useGeneratedKeys=“true“ keyProperty=“id“的作用

"message": "\r\n### Error updating database. Cause: java.sql.SQLException: Field 'id' doesn't have a default value\r\n### The error may exist in file [H:\\runyiwangluo\\gang_spring_cloud\\gang-product-center\\gang-product-starter\\target\\classes\\mapper.

2020-07-10 13:18:40 3287

原创 多线程

线程池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 275

原创 面试之消息队列

面试官 : 为什么使用消息队列PS : 一般这么问首先是你简历中写了你项目中使用过消息队列,其次是单纯的考察你消息队列的一些基础的问题回答的时候首先是知道消息队列的作用 : 解耦 、异步 、 削峰解耦 、异步 不需要解释 ;削峰 就是说错过高峰期,等到错过之后再一步一步的消化掉请求;比如说双十一的时候,提交订单的人很多,1-2s内大量的请求出现,在提交订单之后会出现卡顿或者说加载中的情况,其实就是错开高峰期,一步一步的消化掉大量的请求。案例 :我们项目是在下发短信和邮件的时候使...

2020-06-24 22:12:06 202

原创

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 154

原创 集合

集合平时用的比较多的有哪些?这个就是详细说下结合Conllection 下 有arrayList 和 LinkListSet下 是HasnSetMap hanshMap 线程安全的话 是ConcurrenHashMap1、ListArrayList 和 LinkList 适用于什么场景arrayList实现是一个数组,线程不安全,适用于多读取少插入的场景linkList是基于双向链表的实现,带有头结点还有尾节点的,适用于一些插入、删除频繁的操作,查询会比较慢vector是线程安..

2020-06-14 14:53:31 133

原创 面试

java8的新特性1、lambda表达式2、streamSynchronized和 Lock 底层实现原理线程池mysql 索引spriung优点double幂等重复支付HashMap数据库结构

2020-06-12 20:33:48 137

原创 消息队列

首先是为什么使用消息队列消息队列优点 : 异步 、解耦 、削峰缺点 :1、系统可用性降低万一MQ挂掉导致系统崩溃;RabbitMQ 有三种模式 : 单机、普通集群、镜像集群单机就是一个MQ在跑 普通就是多个MQ在跑,每一个MQ都是复制过去的、一样的;多台机子上启动多个MQ实例 镜像集群模式就是你创建的Queen无论是数据元还是消息数据都存在多个实例当中,每次写消息到queue的时候,都会吧消息自动到多个queue中消息同步 坏处就是性能消耗太大、扩展性低:就算是新增queue还是复制

2020-06-09 00:10:40 154

原创

地址1、什么是分布式分布式是把不同的业务分配到不同的机子上去;springcloud微服务,把不同的模块做成不同的服务独立运行;2、springcloud 组件eurka 注册中心ribbon 客户端负载均衡hystrix 容错feign 服务调用zuul 网关config 配置中心3、shiro4、jwt5、分布式事务6、redis 双写一致性7、分布式锁8、数据库优化9、分库分表===============================...

2020-06-06 22:29:12 281

原创 springMVC

SpringMVC的流程?(1)用户发送请求至前端控制器DispatcherServlet;(2) DispatcherServlet收到请求后,调用HandlerMapping处理器映射器,请求获取Handle;(3)处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet;(4)DispatcherServlet 调用 HandlerAdapter处理器适配器;(5)HandlerAdapter 经过适配调用 具体处

2020-06-03 18:32:51 74

原创 java

forward和redirect是什么?forward 转发 浏览器重新请求数据 数据不共享redirect 重定向 内部重定向 服务器直接访问客户端不知道 共享数据

2020-06-03 18:32:44 110

原创 springcloud

组件eurekazuulribbonconfig

2020-06-03 16:50:50 221

原创 redis

缓存穿透redis 中数据都是从数据库中获取,穿透是因为redis中没有查询到,在数据库中也没有查询到,结果就是数据库中没有这一条数据放到redis中 ,那么每次查询都是查询不到,数据库中也没有数据,就形成一个恶性循环如果大量的访问出现这种情况对数据库压力很大解决 :这个数据没有的话,在redis中存储这个key,返回一个null如果有一个IP频繁的一直访问这个key 的话 可以判定他是恶意的,监控这个IP,操作这个IP缓存雪崩查询redis的时候 大量的key 同一时间都过期了,结果就是请..

2020-06-03 16:49:52 818

原创 Mybites

mybites 二级缓存在配置文件中开启二级缓存,在mapper中打上catch标签就可以了

2020-06-03 16:49:40 276

原创 springboot

springboot 运行机制@SpringbootApplication 就是spring中 @Configuration 标注为配置类@CompanentScan spring下注解 指定需要装配的组件 注册到容器中@EnableAutoConfigurante 开始自动配置核心 @AutoConfigurantePackage 将主类所在的包作为自动配置的包进行管理 @Import 导入一个类到IOC容器中 根据mate-inf 下spri...

2020-06-03 16:49:28 257

原创 spring

AOP与OOP(面向对对象编程相比,OOP会散落到代码的各个部分,难以维护,AOP把这些问题与主业务逻辑分开,与主业务逻辑解耦IOC 实现是使用Map 根据name进行获取@EnableAspectJAutoPeoxy@Aspect@Pointcut日志权限事物java动态代理使用接口默认是接口 其他的是CGlib@ComponentAnnotationConfigApplicationContext使用AnnotationConfigAp...

2020-06-03 16:49:16 627

原创 jpa

jpa 模型

2020-06-03 16:48:37 66

原创 Mysql

索引高效帮助数据库获取数据的一种数据结构,主要支持 hasg 和 B+treehash 对范围查询不支持B+Tree 支持范围查询索引提高查询 插入删除就会牺牲 数据的变更会重新维护索引结构带来大量的IO开销,索引创建的时候 对于唯一性差,会经常更改的字段不建立索引,对于唯一性高,作为过滤、排序、查询条件的字段可以建立索引,每一张最多建立对16个字段建立索引,索引失效...

2020-06-03 16:47:16 241

原创 fragment下使用fragment+viewpager 出现白版或者黑板

在使用viewpager的时候是使用fragment进行配合的,在开发的时候出现使用这样的场景fragment+viewpager 中的一个fragment 还要使用 fragment+viewpoager那么出现的bug就是白纸一张是在你使用getActivity().getSupportFragmentManager()或者getFragmentManager()...

2020-03-31 16:43:56 204

原创 springboot 微信授权遇到的坑(本地测试)

微信授权这个看这篇基本就够用了大神比较X微信授权地址,绝不后悔跟着这篇文章走基本能搞明白怎么玩,那么下一步就出现问题了一开始也是质疑文章不对,but 查了一下才知道 是我out了需要域名那么这一篇可以了微信本地授权特别注意文章最下方本地只支持80...

2020-03-27 17:30:20 255

原创 Couldn't check for existence of job: Table 'manage.QRTZ_JOB_DETAILS' doesn't exist

今天把项目框架改了一下,新增了一些表,拷贝了一些表结果出现了问题 Application run failedorg.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'jobController': Unsatisfied dependency e...

2020-03-20 16:43:42 3643 2

原创 java.lang.SecurityException:Permission Denial: startForeground from pid=30734, uid=10214 requires an

今天看腾讯的buggly发现有一个bug导致崩溃直接看问题:上面显示 :java.lang.SecurityException:Permission Denial: startForeground from pid=30734, uid=10214 requires android.permission.FOREGROUND_SERVICE需要这个FOREGROUND...

2020-02-10 15:04:23 1674

原创 android MD样式的app版本升级

国际惯例先上图:其实实现起来很简单,就是一个deloag的弹窗、一个网络下载、一个progressbar首先是两个依赖:// 圆饼状进度 implementation 'com.github.HotBitmapGG:RingProgressBar:V1.2.3'// MD 风格的对话框 implementation 'com.afolle...

2020-01-17 22:31:26 517

原创 The given artifact contains a string literal with a package reference 'android.support.v4.content' t

运行项目出现如下问题The given artifact contains a string literal with a package reference 'android.support.v4.content' that cannot be safely rewritten. Libraries using reflection such as annotation process...

2020-01-16 16:41:31 1345

原创 android 软键盘取消

需求:获取返回键的时候弹出是否确定返回捕获到返回键的时候需要点击两次才能弹出这个Delog,恶心到我了点击的时候发现总是先取消软键盘再弹出。。。设计思路:进入页面之后禁止自动弹出软键盘1.在父控件中禁止android:focusable="true"或者android:focusableInTouchMode="true"我在使用的时候 androi...

2019-12-28 11:43:44 374

原创 ERROR: Could not download gradle-core.jar

在android stadio 编译的时候报错:ERROR: Could not download gradle-core.jar表示一脸懵逼,因为在之前的时候从来没有出现这个问题。百度了一下 :之前为了方便把Offine 打开了,取消选择就可以。这个是我操作之后运行可以,如果不行就只能继续找原因了。...

2019-12-25 11:53:28 1742

原创 标题栏被遮挡

先上图看看顶部被遮挡,我已开始以为是顶部自定义的原因,被下面的布局积压了。其实是顶部与这个布局之间的问题其实很简单加上一行代码就可以了 android:fitsSystemWindows="true"代码加在布局中就可以了...

2019-12-24 16:44:58 760

原创 springboot 2.X 解决跨域问题

什么是跨域跨域都是挂在嘴边的问题,整天说,整天听见有人聊,但是当有人问你什么是跨域的时候,囧了。。。。http://localhost:8080 协议 ip 端口 有一点不一致,那么就会跨域以前做项目就简单的配置一下全局就可以了 @Override public void addCorsMappings(CorsRegistry registry) { ...

2019-12-07 23:36:43 366 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除