java
文章平均质量分 86
BrownC_
这个作者很懒,什么都没留下…
展开
-
Java多线程
多线程 线程与进程区别 进程是所有线程的集合,每一个线程是进程中的一条执行路径。 优点:使用多线程可以提高程序的执行效率。 创建线程的三种方式 第一种,继承Thread类,重写run方法 package com.cjj.thread; /** * @ClassName ThreadStudy_1 * @Date 2021/06/27 23:11:25 * @Created by ccc-j * @email ccc-ju@outlook.com */ /** * 什么是进程? * 进原创 2021-07-17 18:32:52 · 142 阅读 · 0 评论 -
window字符编码问题导致的Linux上线事故
事故背景:openjdk与jdk引发的惨案 项目测试初期,服务器使用了Docker的环境 Dockerfile文件如下 本地采用的是jdk8 当高高兴兴写好shell脚本并跑了起来的时候,前端那边开始出问题了,项目开始抛出异常(项目使用的是谷歌的),maven如下: <dependency> <groupId>com.github.penggle</groupId> <artifactId>kaptcha</artifactId&原创 2020-12-21 19:06:49 · 251 阅读 · 0 评论 -
这可能是最全且带示例的缓存穿透、缓存击穿、缓存雪崩的解释与总结
案例演示缓存穿透、缓存击穿、缓存雪崩 缓存处理流程分析: 前台请求,后台先从缓存中取数据,取到直接返回结果,取不到时从数据库更新到缓存,并返回结果,数据库也没取到则返回空结果。 缓存穿透: 描述: 缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起为id为“-1”的数据或id为特别大不存在的数据。这时的用户很可能是攻击者,这种请求会导致数据库压力过大从而引发宕机 解决方案: 接口层增加校验,如用户鉴权校验,id做基础校验,id<=0的直接拦截; 从缓存取到不同的数据,在数据库原创 2020-11-05 18:23:28 · 152 阅读 · 0 评论 -
SpringBoot启动报错信息:Failed to auto-configure a DataSource: ‘spring.datasource.url‘ is not specified...
记录一次错误信息: *************************** APPLICATION FAILED TO START *************************** Description: Failed to auto-configure a DataSource: 'spring.datasource.url' is not specified and no embedded datasource could be auto-configured. Reason: Faile原创 2020-11-05 09:50:08 · 467 阅读 · 0 评论 -
Redis详解--最后包含缓存穿透、击穿、雪崩(纯手工)
Redis介绍: 什么是Redis? 全称:REmote Dictionary Server(远程字典服务器)。完全是开源免费的,用C语言编写的,遵守BCD协议。是一个高性能的(key/value)分布式内存数据库。 基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSQL数据库之一,也被人们称为数据结构服务器。 Redis与其它key-value缓存产品有如下三个特点 Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用 Redis不仅仅支持简单的key原创 2020-10-27 16:09:22 · 250 阅读 · 0 评论 -
Spring-Cloud简单应用和搭建
Spring Cloud Eureka: 注册中心,服务提供方与Eureka之间通过“心跳”进行监控,当某个提供服务方出现问题时,Eureka会自动把它从列表中剔除,实现了服务的自动注册、发现、状态监控 原理图: 配置eureka-server的时候,单机eureka服务不需要自己注册自己,也不需要自己拉取自己 如果是集群,需要eureka服务进行相互注册 eureka: client: service-url: # eureka服务的地址,如果是集群,需要指定其它的eureka服原创 2020-10-27 16:02:26 · 148 阅读 · 0 评论 -
浅析Mybatis中#和$的区别
有很多大神都在自己博客写了关于Mybatis中#和$的区别,但有时候并不能看的很懂,今天遇到了这样的问题,就做个浅析吧。 由于小弟是一名实习生,如果说的不对,请谅解,好了,进入正题: 背景:老大要求两个接口,分页,能够自定义排序字段,自定义排序,数据库是SqlServer,小弟比较倾向于使用sqlServer中的OFFSET做分页 分页示例: select * from rpt_supper_pv...原创 2020-01-02 11:47:32 · 210 阅读 · 1 评论 -
SpringCloud--FastDFS原理及使用
FastDFS简介 为什么 在分布式集群环境下,文件上传至节点A,这时通过负载均衡算法,访问到节点B,则不能访问到文件,这时会出现有时能访问有时不能访问的问题 同时要考虑为文件做冗余备份、负载均衡、线性扩容等功能,这些都是单节点文件上传所不具备的 FastDFS体系结构 FastDFS是一个开源的轻量级[分布式文件系统],它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。原创 2020-10-21 12:06:04 · 812 阅读 · 0 评论 -
二分查找之java实现(递归、循环)
Java–二分查找 可能有些人看到二分查找就不想看下去了,毕竟网上太多了。。。但是虽然多,但不是自己的东西,所以就自己写一个吧。 什么是二分?为什么要使用二分? 二分查找,顾名思义就是一分为二的查找,每次都是找当前区间的一半长度,效率高 缺点:只能是有序排列的序列,想象一下,如果是无序的,我们找一个数字,无法判断它究竟是在哪个半边。 案例: 现在有数组a,如下: 假如我们要查找数字target为48,需要查找几次? 第一次:数组区间[0,12],我们需要将数组一分为二,找到中间值是31,发现48比31大原创 2020-09-09 14:22:57 · 398 阅读 · 0 评论