自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 问答 (1)
  • 收藏
  • 关注

转载 设计模式之七大原则

设计模式的七大原则设计模式的七大原则1.开闭原则(Open Closed Principle,OCP)软件实体应当对扩展开放,对修改关闭2. 里氏替换原则(Liskov Substitution Principle,LSP)子类可以扩展父类的功能,但不能改变父类原有的功能3. 依赖倒置原则(Dependence Inversion Principle,DIP) 要面向接口编程,不要面向实现编程。4...

2019-07-03 11:25:27 182

原创 中文转拼音(带音调)

demo中使用的是github的,根据个人实际情况决定包的引用。这个jar依赖还存在。

2023-09-20 19:39:03 123

原创 使用多数据源dynamic-datasource-spring-boot-starter遇到的问题记录

将ck和mysql数据源mapper里面的方法提取成一个公共的接口(简称D),编写两个类(简称E、F)实现这个公共接口D,重写接口方法,E类里面注入B的实例,由于E实现D接口,D接口方法来自B接口,所以E类里面可以使用B的实例调用B接口的方法,F类同理。此时存在ck数据源mapper(简称B)和mysql数据源mapper(简称C),里面方法相同,但service实现类只能允许一个mapper去调用B或者C里面的方法。2、clickhouse的sql语句读到了mysql数据库。

2023-07-28 17:02:38 1477 1

原创 工作流引擎技术选型

市场上比较有名的开源流程引擎有osworkflow、jbpm、activiti、flowable、camunda。其中:Jbpm4、Activiti、Flowable、camunda四个框架同宗同源,祖先都是Jbpm4。由Salaboy团队基于由Activiti6核心迭代的新版本,但是没有给引擎注入更多的新特性,只是在Activiti6之外的上层封装了一些应用。从2017开始截至到2022年5月,Activiti7迭代到的最新版本为:7.3.0。

2023-06-26 11:34:01 2058

原创 httpd安装

httpd离线安装

2023-01-07 17:06:13 1418

原创 HashMap的部分源码解读

HashMap的部分源码解读

2022-09-13 15:02:06 144 1

原创 redis集群学习一些记录

疑问1:主节点挂掉后,从节点顶上,那么挂掉的主节点会怎样?解答:当S1成为了新的Master之后,S2和节点3该如何处理?显然并不是篡位之后就杀掉hh。实际上我们是让S2和节点3成为新的主节点S1的Slave节点,去备份S1节点的数据。在https://zhuanlan.zhihu.com/p/106110578?utm_source=wechat_session这篇文章找到了答案。疑问2:槽位是什么Redis 集群并没有使用一致性hash,而是引入了哈希槽的概念。Redis 集群有16384个哈希

2021-04-16 14:53:48 79

原创 redis集群的几种模式

redis集群的几种模式主从模式哨兵模式Cluster集群模式(推荐)三种模式都有搭建成功,相比之下,个人还是推荐Cluster集群主从模式主从模式(Master-Slave Replication)原理Slave从节点服务启动并连接到Master之后,它将主动发送一个SYNC命令。Master服务主节点收到同步命令后将启动后台存盘进程,同时收集所有接收到的用于修改数据集的命令,在后台进程执行完毕后,Master将传送整个数据库文件到Slave,以完成一次完全同步。而Slave从节点服务在接收到

2021-04-16 14:46:54 151

原创 redis单机与集群配置代码

基于项目对jedis代码的重构,对redisTemplate以及redis集群写法研究了一点点,于是有了本文主要是springboot整合redis单机和集群,通过redisTemplate实现redis的操作。

2021-04-14 18:51:53 297

原创 解决com.xpand.. starter-canal 依赖引入问题

第一步:前往https://github.com/Ulysses0/spring-boot-starter-canal 下载代码zip包第二步:下载完成进入项目根目录starter-canal 中 ,在文件管理器地址栏输入cmd,进入到cmd窗口,输入命令行如下:mvn install第三步:等待打包完成 target目录下生成 starter-canal-0.0.1-SNAPSHOT.jar第四步:然后通过cmd进入到target目录下,在当前目录下输入命令:mvn install:insta

2020-09-03 11:48:28 4525 2

转载 Redis的一些问题

摘录于 https://mp.weixin.qq.com/s/LGkS_2wkcXhThfOiRRQC7Q一、Redis 的通讯协议是什么Redis 的通讯协议是文本协议,是的,Redis 服务器与客户端通过 RESP(Redis Serialization Protocol)协议通信。二、Redis 究竟有没有 ACID 事务1、原子性事务具备原子性指的是,数据库将事务中多个操作当作一个整体来执行,服务要么执行事务中所有的操作,要么一个操作也不会执行。a、为何 Redis 不支持回滚这个.

2020-07-16 17:56:47 115

转载 如何设计一个安全的对外接口

转载:https://my.oschina.net/OutOfMemory/blog/3131916文章目录前言一、安全措施1.数据加密2.数据加签3.时间戳机制4.AppId机制5.限流机制6.黑名单机制7.数据合法性校验二、如何实现1.数据加密2.数据加签3.时间戳机制4.AppId机制5.限流机制1.令牌桶限流2.漏桶限流3.计数器限流6.黑名单机制7.数据合法性校验前言最近有个项目需要对外提供一个接口,提供公网域名进行访问,而且接口和交易订单有关,所以安全性很重要;这里整理了一下常用的一些.

2020-07-08 14:24:34 177

原创 假设有50瓶饮料,喝完3个空瓶可以换一瓶饮料,依次类推,请问总共喝了多少瓶饮料???

话不多说,直接上代码,四种方式任君选择public class Drink { public static void main(String[] args) { add0(50); add1(50); System.out.println(add(50)); System.out.println(add(50,0)); } private static void add0(int n) { int

2020-07-03 21:40:54 514

原创 关于Hive sql里面的分组函数

列转行通过collect_set函数实现,发现对字段进行去重了,后来发现collect_list函数可以实现,现总结如下:concat_ws和collect_set()函数实现(对某列进行去重)其作用是将多行某些列的多行进行去重合并,并通过;符号进行连接,代码如下;concat_ws和collect_list()函数实现(对某列不进行去重)同时hivesql 中序号可用select ...

2020-04-14 16:44:30 1828

原创 CentOS 7镜像下载和安装教程

1.CentOS下载1.1 CentOS是免费版,推荐在官网上直接下载网址:https://www.centos.org/download/1.2 阿里云站点下载阿里云站点:http://mirrors.aliyun.com/centos/7/isos/x86_64/进入站点如下图:各个版本的ISO镜像文件说明:CentOS-7-x86_64-DVD-1708.iso ...

2019-12-10 15:44:47 4103

转载 【SSM】Kisso实用教程(二)

https://www.jianshu.com/p/4026edd340bbMaven依赖项/pom.xml<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus</artifactId> <version>1.2...

2019-11-18 22:29:47 715

原创 【SSM】Kisso实用教程之验证码简单使用(一)

先来张效果图展示一下Maven坐标:<dependency> <groupId>com.baomidou</groupId> <artifactId>kisso</artifactId> <version>3.5.6</version></dependency>简单使...

2019-11-18 22:29:03 400

原创 网关限流令牌桶

routes: - id: xxx #id唯一标识,可自定义 uri: lb://goods #lb协议表示从Eureka注册中心获取服务请求地址 predicates: - Path=/api/item** filters: - StripPrefix=1 - name: RequestRateLimiter #请求数限流 名字不能随便写 ,使用默认的f...

2019-10-22 20:44:42 298

原创 thymeleaf基本语法

需要判断HashMap中是否存在对应的key,如果存在,则取出并输出,如果不存在,输出空th:value="${#maps.containsKey(searchMap,‘keywords’)? searchMap.keywords:’’}"unless,包含则不执行th:unless="${#maps.containsKey(searchMap,‘category’)}"src图片:th...

2019-10-19 18:00:26 359

原创 mysql的存储过程基本使用

创建存储过程CREATE PROCEDURE dataBackupForAllTable () BEGIN...END;带参数传递CREATE PROCEDURE dataBackupForOneDept (IN p_In int ) BEGININSERT INTO his_user (ID,ORG_ID,AU_ID) SELECT ID,ORG_ID,AU_ID FROM ...

2019-10-19 17:59:38 115

原创 List集合、常用数据结构基本了解

List接口List接口特点:它是一个元素存取有序的集合。例如,存元素的顺序是11、22、33。那么集合中,元素的存储就是按照11、22、33的顺序完成的)。它是一个带有索引的集合,通过索引就可以精确的操作集合中的元素(与数组的索引是一个道理)。集合中可以有重复的元素,通过元素的contains方法,来比较是否为重复的元素。数据结构数据存储的常用结构有:栈、队列、数组、链表和红黑树...

2019-10-05 19:09:40 3292

原创 start与run的区别

start与run的区别:public static void main(String args[]) { Thread t = new Thread() { public void run() { pong(); } }; t.run(); //pongping //t.start(); //pingpo...

2019-09-22 22:10:10 159

原创 将zookeeper、Tomcat、redis部署成windos服务

https://blog.csdn.net/yzy199391/article/details/80605195windows下zookeeper安装并发布成windows服务https://blog.csdn.net/alex19961223/article/details/89632357把Tomcat打成Windows服务

2019-09-22 22:09:06 145

原创 四种保留小数后两位输出方法

四舍五入:结果虽保留了两位,但四舍五入了double d = 114.145;d = (double) Math.round(d * 100) / 100;System.out.println(d);要创建对象,要导包double d = 114.145;BigDecimal b = new BigDecimal(d);d = b.setScale(2, BigDecimal.ROU...

2019-09-16 21:28:26 3731

原创 java实现系统多级文件夹复制

package com.jae;import java.io.*;//复制文件夹内的内容,包含多级文件夹public class Test2 { public static void main(String[] args) throws Exception { //原文件夹地址 File resPath = new File("E:\\Java84...

2019-09-16 21:28:12 236

原创 springCloud的注册中心Eureka和Zookeper的区别

1、Eureka 简介:Eureka 是 Netflix 出品的用于实现服务注册和发现的工具。 Spring Cloud 集成了 Eureka,并提供了开箱即用的支持。其中, Eureka 又可细分为 Eureka Server 和 Eureka Client。1.基本原理上图是来自eureka的官方架构图,这是基于集群配置的eureka; 处于不同节点的eureka通过Replica...

2019-08-24 16:20:49 1000

原创 字节流、字符流

IO概述输入也叫做读取数据,输出也叫做作写出数据。IO的分类根据数据的流向分为:输入流和输出流。输入流 :把数据从其他设备上读取到内存中的流。输出流 :把数据从内存 中写出到其他设备上的流。格局数据的类型分为:字节流和字符流。字节流 :以字节为单位,读写数据的流。字符流 :以字符为单位,读写数据的流。输入流输出流字节流字节输入流 InputStream字...

2019-08-16 16:23:23 82

原创 springboot中使用RedisTemplate操作redis遇到的问题

首先说说问题,在springboot中使用RedisTemplate操作redis时候,通过redis工具发现存入redis的数据的键为空,如下图:点击空的键,弹出错误提示:不能打开值的标签,不能加载key,因为它(key)不存在数据库中,请重新加载连接,如图:通过黑窗口查看redis中的键,发现存储在redis中的key不是设置的string值,前面还多出了许多类似\xac\xed\x0...

2019-08-14 19:22:44 2986

原创 idea 往 Github 上 push 失败

在idea上尝试使用Git往Github远程仓库上传本地代码的时候,遇到了问题。使用了Add——–>Commit——–>Push的过程中,在push的时候一直报错看了一下网上介绍后,最后是这样解决的。到你要提交的项目的根目录下,开启显示隐藏文件夹选项,进入.git这个文件夹用文本编辑器打开config文件,内容大致如下:把remote “origin”下面这行url 的...

2019-08-12 10:25:21 2418 2

转载 缓存三大问题

作者丨我一定会有猫的 https://juejin.im/post/5b604b9ef265da0f62639001缓存三大问题及解决方案1. 缓存来由随着互联网系统发展的逐步完善,提高系统的qps,目前的绝大部分系统都增加了缓存机制从而避免请求过多的直接与数据库操作从而造成系统瓶颈,极大的提升了用户体验和系统稳定性。2. 缓存问题虽然使用缓存给系统带来了一定的质的提升,但同时也带来...

2019-07-21 23:14:27 150

原创 SSM个人遇到的问题汇总——不定期更新

1.SpringMvc中jsp页面的EL表达式不生效的问题:原因:isELIgnored默认值为true!解决办法:在jsp页面上方添加<%@ page isELIgnored=“false”%>,该设置代表在本jsp中使用el表达式,可以解析其中的值。若isELIgnored设置为true,代表在本页不使用el表达式,当做字符串解析出来显示。此时,el表达式正常工作,显示正常。...

2019-07-17 11:08:09 796

转载 IDEA的UML图详细介绍(二)

统一建模语言简介统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标准。它的特点是简单、统一、图形化、能表达软件设计中的动态与静态信息。统一建模语言能为软件开发的所有阶段提供模型化和可视化支持。UML 从目标系统的不同角度出发,定义了用例图、类图、对象图、状态图、活...

2019-07-03 10:05:53 3608

原创 IDEA的UML图介绍(一)

1.看继承关系快捷键 crtl + H查看hierarchy,可以查看上下继承关系。右键选择Diagrams(快捷键ctrl+alt+u),然后显示UML图2.看接口的实现关系crtl + alt + B会显示出跟这个接口有关系的类。然后把需要的拖过来,形成树状图。蓝色实线表示的是继承关系绿色虚线表示的是接口实现关系绿色实线表示的是接口与接口的关系3.展示类/接口的详细信息:第...

2019-07-03 09:17:15 4339 2

原创 缓冲流、转换流、序列化流、打印流

第一章 缓冲流缓冲流,也叫高效流,按照数据类型分类:字节缓冲流:BufferedInputStream,BufferedOutputStream 字符缓冲流:BufferedReader,BufferedWriter缓冲流的基本原理,是在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次数,从而提高读写的效率。字节缓冲流构造方法public ...

2019-06-07 15:29:48 85

原创 端午安康!

祝大家端午节快乐!

2019-06-07 15:29:14 151

原创 mysql配置

环境变量配置:1.在环境变量处,新建一个变量名为MYSQL_HOME 变量值为你的mysql的解压路径2.在系统变量path的路径下的开头,添加%MYSQL_HOME%\bin;1)以管理员的方式打开cmd命令窗口(直接打开cmd运行,可能会报错),并且进入到mysql安装目录的bin目录下。然后输入命令mysqld install 之后显示成功2)再输入:mysqld --initial...

2019-06-02 17:17:54 547

原创 File类

File类java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。构造方法public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。 public File(String parent, String child) :从父路径名字符串和子路径名字符串创建新的 File实例。...

2019-06-02 17:17:08 54

原创 Thread线程

多线程● 并行:指两个或多个事件在同一时刻发生(同时发生)。● 并发:指两个或多个事件在同一个时间段内发生。线程与进程● 进程:是指一个内存中运行的应用程序,每个进程都有一个独立的内存空间,一个应用程序可以同时运行多个进程;进程也是程序的一次执行过程,是系统运行程序的基本单位;系统运行一个程序即是一个进程从创建、运行到消亡的过程。就是.exe文件,一个应用程序可以有多个进程,每个进程都有...

2019-06-02 17:16:50 61

原创 【Collection、泛型】

【Collection、泛型】第一章 Collection集合1.1 集合概述集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既的区别:数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。1.2 集合框架集合按照其存储...

2019-05-17 11:32:06 78

原创 【Object类、日期、StringBuilder】

【Object类、常用API】第一章 Object类1.1 概述java.lang.Object类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。在对象实例化的时候,最终找的父类就是Object。public String toString():返回该对象的字符串表示。public boolean equals(Object obj):指示其他某个对象是否与此...

2019-05-10 14:20:04 74

空空如也

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

TA关注的人

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