自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (1)
  • 收藏
  • 关注

原创 springboot druid 加载外部数据库连接

直接上代码,就三个类,在不使用外部配置的情况下也能读取默认的配置文件import com.alibaba.druid.filter.config.ConfigFilter;import com.alibaba.druid.filter.encoding.EncodingConvertFilter;import com.alibaba.druid.filter.logging.CommonsLogFilter;import com.alibaba.druid.filter.logging.Lo

2021-11-18 15:50:07 1105

原创 Redis分布式锁的问题以及解决方案

问题一:获取到锁的线程的对应主机挂了,这时无法释放锁,其他的主机也无法获取锁设置锁过期时间,到了一定时间就释放锁问题二: 获取到锁的线程执行业务代码时间超过锁的过期时间,这会造成其他线程也能竞争到锁,这时有两把锁,会造成脏数据锁续命:延长过期时间 expire(lock, time)问题三:redis主从问题,获取锁时,数据未同步到从机,导致锁丢失redlock:原理与zookeeper分布式锁原理相同.多台主机超过半数设置成功则获取锁成功,要注意下主机个数必须是奇数,不过这.

2021-02-05 14:53:18 1741

原创 配合docker-compose的简易脚本配合上软链接实现简单命令启动关闭容器查看容器日志

shell脚本#set ff=unix!/bin/bashcn=$2path=/docker/bin/start(){docker-compose -f "$path"docker-compose-$cn.yml start}stop(){docker-compose -f "$path"docker-compose-$cn.yml stopecho "docker-compose -f "$path"docker-compose-$cn.yml stop"}up(){d...

2021-01-31 11:48:37 761

原创 element ui upload控件同一个文件无法多次提交问题

直接上解决方法,在上传成功后的钩子函数里添加:this.fileList[0].status='ready'fileList是文件列表,status是单文件的状态改成ready就能再次上传

2020-10-09 13:47:33 1415

原创 springcloud nacos配置中心与服务的注册与发现配置

Nacos服务端下载及启动下载地址:https://gitee.com/mirrors/Nacos下载后打包,windows直接双击bin目录下的startup.cmd文件启动访问地址:ip:8848/nacos登录账号密码:nacos nacosNacos配置中心客户端pom配置<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot

2020-08-21 17:02:14 467 1

原创 spring自定义标签使用

一、新建实体类@Datapublic class Linxh{ private Integer age; public Linxh(Integer age){ this.age = age; }}二、新建类LinxhBeanDefinitionParser,beandefinition转换器package com.linxh...

2019-12-18 14:50:33 176

原创 vue+elementui+springboot后端菜单国际化

vue提供了前端国际化,但菜单栏通过后端控制,个人写个后端菜单国际化的控制(可扩展)主要思路:后端启动时初始化将数据库中所有的菜单初始到容器里,前端发请求带上语言类型请求头,更据语言类型返回菜单数据新增一张表sys_lang/*==============================================================*//* Table: sys...

2019-12-04 10:38:29 2440 1

原创 java优雅的编写代码

一、构造器参数太多 1、用建造者设计模式 2、用JavaBeans模式, 3、get和set二、不需要实例化的类应该构造器私有三、不要创建不必要的对象 比如自动装箱Long a = 1L,可以在多个实例中重用的成员变量使用static四、避免使用终结方法 比如finalizer()五、使类和成员的可...

2019-10-15 11:16:19 654

原创 jvm出现各个区域内存不足的问题分析

一、内存溢出 程序在申请内存时,没有足够的内存空间,很多时候内存溢出都是因为内存泄漏造成的二、内存泄漏 该释放的对象没有释放,对象无法被回收,常见于使用容器保存元素的情况,这一定是代码的问题三、栈溢出 常见于递归调用造成的死循环四、堆溢出 对象不断被创建,堆内存不足存放太多对象五、方法区溢出 在...

2019-10-15 10:38:17 831

原创 java中的四种引用(强软弱虚)

一、强引用 =号的引用,比如User user = new User(),强引用不会被垃圾回收,就算内存不足也不会回收二、软引用 SoftReference<User> user = new SoftReference<>(new User()),软引用在内存不足促发full gc的时候会回收掉三、弱引用 Weak...

2019-10-15 10:18:43 152

原创 jvm内存模型、垃圾回收算法

2019-09-09 13:46:37 115

原创 SpingBoot集成MapDb

MapDb是一个基于jvm内存的轻量级数据库,可以持久化map数据,有点类似nosql,不需要配置连接,在项目中集成就行一、配置pom文件依赖和仓库地址:<dependency> <groupId>org.mapdb</groupId> <artifactId>mapdb</artifactId> ...

2019-09-02 17:26:25 1210

原创 多线程基础

一、线程与进程的区别进程:程序运行资源分配的最小单位,进程内部有多个线程,会共享这个进程的资源线程:CPU调度的最小单位,必须依赖进程而存在。二、并发与并行的区别并发: 在单位时间内可以处理多个事情的能力并行: 在同一时刻可以处理多个事情的能力三、多线程实现的方式继承Thread类,实现Runnable、Callable接口三种方式(推荐使用Callabl...

2019-08-08 10:49:19 153

原创 java集合接口List接口实现类源码的实现

该文章主要讲解各个ArrayList和LinkedList用的是什么样的数据结构实现的,怎么操作数据的(主要讲添加删除获取的操作)List接口:ArrayList实现:一、ArrayList是用Object数组来实现的,是有序的线性表结构.初始化不设置初始的数组的size大小的时候,会默认为空数组,二、add()会判断数组能存的空间是否已经满了,满了就会创建一个新数组,新数组的s...

2019-07-31 14:53:38 288

原创 银联联机UTVT SM4 MAC算法

/** * SM4 mac计算 * 1.数据不为16的倍数,需要补0 * 2.将数据16个字节进行异或,再将异或的结果与下一个16个字节异或,一直到最后 * 3.将异或运算后的最后16个字节 转换成32 个HEXDECIMAL: * 4.取前16 个字节用MAK加密 * 5.将加密后的结果与后16 个字节异或 * 6.用异或的...

2019-07-30 15:15:49 3940 2

原创 vue+elementui+springboot实现excel导入并读取excel数据

我将前端读取到的excel数据转成excel json字符串和excel字符串数组,excel json字符串后台转成map集合(Map<String,String>),excel字符串数组转成list(List<List<String>>),每一个list代表excel一行数据的key,数据示例请看截图:key值list如截图中的第一行,key value...

2019-07-30 14:57:51 13325 7

原创 银联电子签名jbig转可视bmp图片

依赖的jar包链接及提取码如下:链接: https://pan.baidu.com/s/14DgnsD-4iPhCEtcTaAuCcA 提取码: hb82调用的代码如下:public static void main(String[] args) { String data = "00 00 01 00 00 00 01 00 00 00 00 4F 00 00 00...

2019-07-24 11:58:31 2298 3

原创 kafka9092端口telnet不通的问题

在linux搭建完kafka启动成功后,在windows上用telnet测试9092端口是否能不能通的时候,发现端口telent不通,我防火墙已经关闭,用netstat命令查看端口占用也没问,后来尝试了修改各种配置后发现server.properties配置文件listeners=PLAINTEXT://:9092改成listeners=PLAINTEXT://0.0.0.0:9092就可以了...

2019-05-09 15:51:26 12443 4

原创 java读取properties文件并修改、新增属性值

import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.util.Properties;import lombok.extern.slf4j.Slf4j;/*** 获取properties文件,修改文件内容* @author lix...

2019-03-28 13:48:05 4447

原创 java中list集合存JSONObject对象,遍历list取json相同key中的值相加

List<JSONObject> jsonList = new ArrayList<JSONObject>(); JSONObject json1 = new JSONObject(); json1.put("code", "MX01"); json1.put("num", "2"); JSONObject j...

2019-03-19 11:31:35 13627

原创 linux centOS7docker安装mysql镜像

下载mysql:docker pull mysql第一次启动配置文件:docker-compose -f docker-compose-mysql.yml up (文件配置在最下方)启动没报错后退出再重新启动:docker-compose -f docker-compose-mysql.yml start进入mysql容器:docker exec -it (容器id) /bin/sh...

2019-03-15 09:18:45 704 1

原创 linux centOS配置ssh远程登录

ssh远程登录 公钥和私钥的生成 进入到/etc/ssh目录下:cd /etc/ssh生成公私钥:ssh-keygen -t rsa -P root123 -f root -C ‘my root key’(root123是登录密码、root是生成的文件名、my root key是登录注释) 将公钥部署到服务器 执行:cat root.pub &gt;&gt; ~/.ssh...

2019-03-15 09:02:23 435

空空如也

空空如也

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

TA关注的人

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