自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 集成Springfox 3.0.0

1、在pom.xml添加以下依赖<!—swagger依赖 --><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-boot-starter</artifactId> <version>3.0.0</version></dependency><!— bootstrap-ui依赖...

2021-07-13 19:11:27 1423

原创 算法-最长回文子串

题目描述对于一个字符串,请设计一个高效算法,计算其中最长回文子串的长度。给定字符串A以及它的长度n,请返回最长回文子串的长度。例如:输入 “abc1234321ab”, 12返回值:7//最长回文子串public static int getLongestPalindrome(String A, int n) { if (A == null || A.length() <= 1) { return 0; } int maxLen = 0; byte[] arra

2020-12-24 20:48:55 187

原创 算法-二叉树的镜像

题目描述操作给定的二叉树,将其变换为源二叉树的镜像。输入描述:二叉树的镜像定义:源二叉树 :8/ 6 10/ \ / 5 7 9 11镜像二叉树:8/ 10 6/ \ / 11 9 7 5//二叉树的镜像public void Mirror(TreeNode root) { if (root == null) { return; } if (root != null) { TreeNode temp = root.left; ro

2020-12-20 21:42:54 195

原创 算法-判断回文

题目描述给定一个字符串,请编写一个函数判断该字符串是否回文。如果回文请返回true,否则返回false。示例1输入:“absba”,返回true示例2输入:“ranko”,返回false示例3输入:“yamatomaya”,返回falsepublic boolean judge (String str) { int len = str.length(); int low = 0; int high = len - 1; boolean b = true;

2020-12-14 21:42:52 498

原创 算法-删除有序链表中的重复元素

题目描述删除给出链表中的重复元素(链表中元素从小到大有序),使链表中的所有元素都只出现一次例如:给出的链表为1→1→2,返回1→2。给出的链表为1→1→2→3→3,返回1→2→3。//删除给出链表中的重复元素(链表中元素从小到大有序),使链表中的所有元素都只出现一次public static ListNode deleteDuplicates (ListNode head) { ListNode node = head; ListNode curr = null; ListNode nex

2020-12-11 14:44:35 340

原创 算法-链表反转和链表内指定区间反转

链表反转输入一个链表,反转链表后,输出新链表的表头。例如:输入{1, 2, 3},返回{3, 2, 1}.public static ListNode reverse (ListNode head) { ListNode pre = null, temp = new ListNode(0); while (head != null) { temp = new ListNode(head.val); temp.next = pre; pre = temp; head = head.n

2020-12-09 21:40:06 200

原创 算法-大数加法和大数乘法

大数加法以字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回。(字符串长度不大于100000,保证字符串仅由’0’~'9’这10种字符组成)public static String solve_add(String s, String t) { int len1 = s.length(); int len2 = t.length(); int i = len1 - 1; int j = len2 - 1; int x = 0; int y = 0; int m = 0;

2020-12-04 20:51:21 435

原创 算法-两个链表生成相加链表

题目描述假设链表中每一个节点的值都在 0 - 9 之间,那么链表整体就可以代表一个整数。给定两个这种链表,请生成代表两个整数相加值的结果链表。例如:链表 1 为 9->3->7,链表 2 为 6->3,最后生成新的结果链表为 1->0->0->0。public static ListNode addInList (ListNode head1, ListNode head2) { if (head1 == null && head2 != nul

2020-11-29 19:59:30 103

原创 centos7.0安装elasticsearch

1、安装jdk,配置环境变量a、安装jdkmkdir /usr/local/java/tar -xvf jdk-8u181-linux-x64.tar.gz -C /usr/local/java/b、配置环境变量vi /etc/profile在文件末尾添加:export JAVA_HOME=/usr/local/java/jdk1.8.0_181export JRE_HOME=$...

2020-04-13 21:25:46 221

原创 Windows下搭建Redis哨兵模式

Redis的集群有三种模式,分别是主从复制、哨兵模式和Cluster模式。主从复制模式无法做到高可用,因此Redis提供了哨兵模式,以监听各个节点的状态,防止节点故障。sentinel的搭建相比主从复制模式复杂一些,但是相比Cluster模式,又不需要安装如ruby环境,所以还是比较简单的。1、首先复制6份Redis脚本,3份作为主从复制(一主两从),3份作为sentinel。2、配置一...

2020-03-26 22:04:54 1403 1

原创 Redis SCAN命令的理解

我们经常会使用keys命令来查看redis的库里有哪些key,如果redis的库里key不是很多的情况下,使用keys命令是没问题的。但是,如果在生产环境的redis库里通常会有比较大的量的key,如果此时还是用keys命令来查看有哪些复合要求的key,就会造成redis不可用。幸好,在2.8版本中,redis还为我们提供了scan命令。scan命令相比keys命令具有以下特点:复杂度虽然...

2020-03-24 21:09:39 719

原创 Windows下搭建Redis集群

Redis常见的多节点搭建有主从、哨兵和集群三种模式,主从模式的主要缺点是不能高可用和无法存放超大量数据,而哨兵模式虽然能够做到高可用,但无法存放超大量数据。因此,Redis为了解决这一问题,提供了集群模式。集群模式的搭建大致分为以下几步:1、安装ruby(下载链接:http://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.3.3...

2020-03-14 15:28:39 176

原创 Windows下搭建Redis主从复制

在项目中,我们一般不会单独使用一个redis节点,因为如果系统运行中redis挂掉,项目可能就无法正常运行。因此,redis为我们提供了redis主从复制功能。下面我们讲一下如何在windows下搭建redis的主从复制(一主两从)。1、我们从网址 https://github.com/microsoftarchive/redis/releases 下载windows版本的redis,并复制到...

2020-03-09 20:51:43 282

原创 redis安装与部署

1.windows安装redis进入网址 https://github.com/microsoftarchive/redis/releases 下载redis最新版安装包3.2.100可以下载msi版本安装包,直接安装成windows的一个服务,但是这样会浪费计算机资源,所以我选择了zip版本。下载后解压到安装目录下,启动时双击启动文件redis-server.exe,启动后6379就是连接...

2020-03-01 14:57:58 156

原创 Springboot集成Mybatis之事务

项目中的读写、修改、删除数据的操作如果发生异常,常常会导致已写入、修改、删除的数据无法回退到最开始的情况。这种情况下,我们就要依赖Spring的事务机制来实现回退操作。下面在ibatis项目的项目上简单讲一下如何使用事务:1、新建Account类import java.io.Serializable;@Data@ToStringpublic class Account impleme...

2020-02-20 22:01:19 594

原创 Springboot整合Spring Retry实现重试机制

在项目开发过程中,经常会有这样的情况:第一次执行一个操作不成功,考虑到可能是网络原因造成,就多执行几次操作,直到得到想要的结果为止,这就是重试机制。Springboot可以通过整合Spring Retry框架实现重试。下面讲一下在之前新建的ibatis项目基础上整合Spring Retry框架的步骤:1、首先要在pom.xml配置中加入spring-retry的依赖:<depende...

2020-02-20 21:10:14 11567 3

原创 SQL标准中的事务四种隔离级别

前段时间找工作,面试官问了我事务的隔离级别这个问题,当时脸上一脸问号。晚上回家找了找答案,决心把这个知识点巩固起来。脏读:脏读是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中;这时另外一个事务也访问这个数据,然后使用了这个未提交的数据。不可重复读:在一个事务内,多次读同一数据。在这个事务还没有结束时,另外一个事务也访问该同一数据。那么,在第一个事务中的两次读数据...

2020-02-20 20:31:15 962

原创 Springboot集成Mybatis之多数据源

在实际项目开发中,我们经常会配置多个数据库,主数据库主要负责增删改操作,从数据库则负责查询操作。这样做的好处是可以减轻主数据库的压力,提高系统响应能力。下面就讲一下Springboot集成Mybatis如何配置多数据源。1、首先新建一个springboot项目,名字就叫multibatis吧,springboot的版本就用2.0.5.RELEASE。<parent> &l...

2020-02-16 18:11:15 288

原创 Springboot集成Mybatis之二级缓存

什么是缓存?简单来讲,缓存就是存储在缓冲区里的内容,或者可以理解为存在内存中的内容。用户可以将经常查询的内容放到缓存中,再次使用时直接从缓存中取值,而不需要再查询数据库。这样做的优点是响应迅速,减少了系统资源(网络资源、CPU资源等)开销;缺点是需要占用内存资源,服务器一旦关机,缓存就会丢失,重启后需要重新将写一遍数据到内存。Mybatis的缓存Mybatis的缓存分为一级缓存和二级缓存。一...

2020-02-13 14:36:02 4188 1

原创 最简单的Springboot集成Spring Data JPA教程

刚开始使用Springboot开发项目时,ORM框架就用的Spring Data JPA,只是之前断断续续用了一年有余,没有做一些总结,趁着现在疫情严重,工作不多的情况下,就来做个笔记,记录一下Springboot集成Spring Data JPA的大体步骤。1、首先新建一个springboot项目,项目名为springdata,springboot的版本就用2.0.5.RELEASE。&lt...

2020-02-12 15:34:02 1121 2

原创 最简单的Springboot集成Mybatis教程

用了很长时间的Springboot,一直想写一篇关于Springboot的文章记录一下。结合最近做的项目,就把Springboot集成Mybatis的步骤大体讲一下。1、首先新建一个springboot项目,名字就叫batis吧,springboot的版本就用2.0.5.RELEASE。<parent> <groupId>org.springframewor...

2020-02-11 16:38:49 481

原创 Ubuntu 14.04安装Docker

Docker利用Linux容器(LXC)虚拟化技术提供一份部署环境。Docker目的是创建可移植,可分发给任何的Docker环境中运行。Docker由于是OpenVZ的作品,对内核有一些要求,不过在Ubuntu14.04仓库中已经可以查找到。 1. 执行命令:sudo apt-get update 2. 执行命令:sudo apt-get install docker.io 3.

2017-09-02 01:23:40 336

原创 Tomcat+Nginx+Redis实现分布式Session共享

最近在研究Nginx+Tomcat实现负载均衡,实验成功后发现了一个问题:用户登录成功后,总是会自动退出系统。经过判断,发现在负载均衡的情况下,每次操作访问后台都有可能访问不同的Tomcat服务器,因此就会判断当前登录用户的session无效而导致退出系统。 解决这种问题的一个比较简单的方法就是在nginx的配置文件与负载均衡相关的配置处加入ip hash,这样每次就会只访问一台Tomcat服务器

2017-08-31 01:21:48 573

原创 Quartz与Spring集成的2种方式

Quartz与Spring集成有2种方式: 1.MethodInvokeJobDetailFactoryBean 2.JobDetailBean 下面分别介绍这两种方式。 1.MethodInvokeJobDetailFactoryBean 1)创建一个Job类,此类不需要实现任何接口,不需要继承任何类public class MyJobTest { public void exe

2017-07-30 18:35:14 1463

原创 Docker数据卷和数据卷容器

在容器中管理数据主要有两种方式:  数据卷(Data volumes)  数据卷容器(Data volume containers) 数据卷 数据卷是一个可提供一个或多个容器使用的特殊目录,它绕过UFS(Unix文件系统),可以提供很多有用的特性:  数据卷可以在容器之间共享和使用  对数据卷的修改会立马生效  对数据卷的更新,不会影响镜像  卷会

2017-07-01 04:53:41 545

原创 Docker常用命令详解

1、 查看docker版本 docker version 2、 显示docker系统的信息 docker info 3、 列出本地所有镜像 docker images 4、 从Docker Hub中搜索符合条件的镜像 docker search image_name 5、 从Docker Hub中拉去或者更新指定镜像 docker pull image_n

2017-06-25 18:12:18 476 1

原创 Docker的四种网络模式

Docker的四种网络模式docker run创建Docker容器时,可以用–net选项指定容器的网络模式,Docker有以下4种网络模式:  bridge模式:使用–net =bridge指定,默认设置;  host模式:使用–net =host指定;  none模式:使用–net =none指定;  container模式:使用–net =container:NA

2017-06-21 23:04:49 45752 5

空空如也

空空如也

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

TA关注的人

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