自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

张步云的专栏

try { Keep learning } catch (Problem p) { Analysis and summary } finally { Success }

  • 博客(86)
  • 资源 (12)
  • 问答 (3)
  • 收藏
  • 关注

原创 mysqlbinlog查询

查看mysql binlog

2022-10-20 11:18:39 1094 1

原创 nacos-server-2.0.4 启动部署失败问题(windows系统)

nacos-server-2.0.4 启动部署

2022-02-09 14:37:46 6558

原创 Callable小例子

import java.util.ArrayList;import java.util.List;import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.Futur..

2021-08-19 01:48:13 269

原创 mysql索引优化助记口诀

口诀不等not null还有or,索引全中也无效;大等小等is null,全索命中才有效;除此全匹最高效,最左匹配要记牢;大小跳索百分号,后面用索也无效;索无函数和计算,才能保证索有效。解释sql中只要包含了!= not null or ,会导致sql中全部索引失效。但是 is null >= <= 不会。>= <= is null只会有两种情况:只有在命中了全部索引,也就是组合索引中的索引全用到了才会都有效并且是全部有效,否则就全无效。组合索引中除了上面的特例外,

2020-12-25 18:03:00 2940 2

转载 几张图轻松理解String.intern()

在翻《深入理解Java虚拟机》的书时,又看到了2-7的 String.intern()返回引用的测试。其实要搞明白String.intern(),我总结了下面几条规则:一、new String都是在堆上创建字符串对象。当调用 intern() 方法时,编译器会将字符串添加到常量池中(stringTable维护),并返回指向该常量的引用。二、通过字面量赋值创建字符串(如:String str=”twm”)时,会先在常量池中查找是否存在相同的字符串,若存在,则将栈中的引用直接指向该字符串;若不存在,

2020-12-17 13:48:06 135

原创 负载均衡分类及算法

概述随着系统日益庞大、逻辑业务越来越复杂,系统架构由原来的单一系统到垂直系统,发展到现在的分布式系统。分布式系统中,可以做到公共业务模块的高可用,高容错性,高扩展性,然而,当系统越来越复杂时,需要考虑的东西自然也越来越多,要求也越来越高,比如服务路由、负载均衡等目的负载均衡的目的就是通过调度集群,达到最佳化资源使用,最大化吞吐率,最小化响应时间,避免单点过载的问题。分类主要分为 DNS负载均衡 和 二、三、四、七层负载均衡 。DNS负载均衡这种是属于较早出现的技术,其利用域名解析实现负载均衡,

2020-12-08 15:44:18 585

原创 @ControllerAdvice和@RestControllerAdvice优雅处理全局异常

@ControllerAdvice和@RestControllerAdvice是spring提供的AOP拦截和处理全局异常的注解。后者提供了json格式的返回体,相当于@ControllerAdvice+在处理的具体方法上加@ResponseBody的效果,可以对比@RestController和@Controller+@ResponseBody。所以如果仅仅使用@ControllerAdvice注解的时候可以返回指定的页面;@RestControllerAdvice或者是@ControllerAd

2020-12-07 18:43:24 1127 2

原创 VMware配置多个虚拟机

选中已经设置好的虚拟机右键-管理-克隆,一直下一步 克隆完成之后执行命,设置网络信息,修改克隆虚拟机的ip信息根据自己的虚拟机设备名称修改自己的ip,不要和开始的ip冲突[root@localhost network-scripts]# vim /etc/sysconfig/network-scripts/ifcfg-ens33ping一下是否可以连通...

2020-10-18 02:11:20 2030

原创 linux系统下docker教程基础篇

docker安装1.卸载旧版本的dockeyum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docke

2020-10-17 19:57:52 469

原创 redis配置文件常用参数详解

bind 127.0.0.1 #绑定的IPprotected-mode yes #保护模式port 6379 #端口daemonize yes #以守护进程的方式运行,默认是no,我们需要自己开启为yes!pidfile ./redis.pid #如果以后台的方式运行,我们需要指定一个pid进程文件!# Specify the server verbosity level.# This can be one of:# debug (a lot of information, u...

2020-10-15 18:02:51 248

原创 通用RedisConfig

import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.data.redis.connection.RedisConnectionFactory;import org.springframework.data.redis.core.RedisTemplate;import org..

2020-10-15 17:05:11 4530

原创 springboot+shiro自定义请求超时返回json或其他对象,不通过shiro的setUnauthorizedUrl

前后端分离的项目导致了页面的路由是由前端来配置的,不通过shiro来跳转页面。这时候需要给前端返回一个自定义的返回体,来告知前端已经超时或者是没权限。具体步骤如下:1.自定义一个filter,继承FormAuthenticationFilter,并实现onAccessDenied方法,这个方法就是来实现请求被拒绝的处理的。import java.io.PrintWriter;import javax.servlet.ServletRequest;import javax.servlet.Se

2020-09-22 16:56:07 613

原创 mybatis

https://mybatis.org/mybatis-3/sqlmap-xml.html

2020-09-17 15:56:58 83

原创 windows下安装多个mysql实例

本地windows 64位系统,已经安装5.6版本,现在要安装5.7版本:解压版安装下载mysql5.7 64位https://dev.mysql.com/downloads/mysql/5.7.html解压缩包解压到D盘安装解压缩包下是没有my.ini文件和data文件夹的,所以首先需要在解压的根目录下创建一个my.ini配置文件,并设置好基本信息,这里注意要修改端口号,不能和之前的mysql端口号一样。 [mysqld]character-set-server=utf

2020-09-15 16:13:29 327

原创 springboot-swagger2教程,多环境安全配置,多栏目配置

使用步骤: 引入swagger和swagger-ui的maven依赖 <!-- swagger2 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.6.1</version> </dependency&g.

2020-09-11 11:19:56 620

原创 代码+画图分析,彻底搞懂nio中channel和buffer

彻底搞懂nio中channel和buffer的区别和联系

2020-09-10 09:12:16 448 1

原创 springboot maven多模块打包引入common子项目找不到jar包的解决办法

父项目和common子模块都不加入 <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin>只在非common子模块的项目中加入

2020-09-08 01:58:33 6635 1

原创 redis命令之哈希表类型ltrim命令用法详情

列表LTRIM命令命令:ltrim key start end,对队列key的元素按照start的位置和end位置进行截取,只保留从start位置到end位置之间的元素,并返回ok(删除整个列表时返回empty...)。特殊情况:1.key不是队列类型的情况下会报错2.当start位置在end位置的右边(左边为队列头,右边为队列尾)的情况(因为两个值都可以为负数,所以现在说左右且规定头尾,不会有歧义),会将整个队列删除。127.0.0.1:6379> flushallOK

2020-08-26 17:47:23 469 1

原创 redis命令之哈希表类型lrange命令用法详情

列表LRANGE命令命令:lrange key start end,返回当前队列key,下标为start到下标为end之间的元素。特殊情况和getrange类似,返回值不会是“”,而是empty...见string类型getrange命令127.0.0.1:6379> flushallOK127.0.0.1:6379> keys *(empty list or set)127.0.0.1:6379> lrange db 0 0(empty list or set)

2020-08-26 17:46:36 1262

原创 redis命令之哈希表类型lset命令用法详情

列表LSET命令命令:lset key index value,将当前列表下标为index的元素重置为value。当且仅当key存在,且index不越界的情况下返回ok,且下标为index的元素的值会被value覆盖。其他都会返回error。127.0.0.1:6379> flushallOK127.0.0.1:6379> keys *(empty list or set)127.0.0.1:6379> lset db 0 redis ##key不存在的情况(er

2020-08-26 17:46:02 1453

原创 redis命令之哈希表类型linsert命令用法详情

列表LINSERT 命令命令:linsert key before|after pivot value,在列表key中,以piovt的值为支点,在它之前或者之后插入value,并返回插入之后的key的长度。特殊情况:1.当key不存在时,操作不会被执行并返回02.当支点pivot不存在时操作不会被执行并返回-1127.0.0.1:6379> flushallOK127.0.0.1:6379> exists db (integer) 0127.0.0.1:637

2020-08-26 17:45:24 311

原创 redis命令之哈希表类型lindex命令用法详情

列表LINDEX命令命令:lindex key index,返回从列表从表头(队列列头)开始下标为index的元素。特殊的情况,当index<0时,返回的是从列表尾部(队列尾)开始的第|index|绝对值的元素,当key不存在或者index参数的值不在列表的区间范围内(out of range),返回nil。127.0.0.1:6379> flushallOK127.0.0.1:6379> lindex db 0 ##key不存在的情况(nil)127.0.0.1:6

2020-08-26 17:44:49 912

原创 redis命令之哈希表类型llen命令用法详情

列表LLEN命令命令:llen key,返回当前列表key的长度。当key不存在时返回0.127.0.0.1:6379> keys *1) "score"127.0.0.1:6379> lrange score 0 -11) "90"2) "93"3) "90"127.0.0.1:6379> llen score(integer) 3

2020-08-26 17:43:14 676

原创 redis命令之哈希表类型lrem命令用法详情

列表LRM命令命令:lrem key count value,从列表key中移除|count|绝对值个value,并返回真正被移除的个数(当key中values的个数小于count的绝对值的时候)。特殊情况:1.count > 0:从表头(左侧)开始向表尾(右侧),依次删除count个value2.count < 0:从表尾(右侧)开始向表头(左侧),依次删除count绝对值个value3.count = 0:从key中移除所有的value4.关于返回值:当count

2020-08-25 16:32:18 1258

原创 redis命令之哈希表类型rpoplpush命令用法详情

列表RPOPLPUSH命令命令:rpoplpush popKey pushKey,一共分为两个顺序操作并且是原子性操作。第一步:将列表popKey进行rpop操作,移除popKey的表尾(右侧)元素,并将rpop的返回值(被移除的元素)作为命令的返回值。第二部:将上面rpop的元素通过lpush命令添加到pushKey的表头(左侧)。特殊情况:1.因为是原子性操作,所以当popKey不存在时,rpop将会不做任何操作,整个命令也就不会执行任何操作,返回nil2.popKey和pushK.

2020-08-25 16:31:50 796

原创 redis命令之哈希表类型rpop命令用法详情

列表RPOP命令命令:rpop key,移除并返回表尾(右侧)的元素。当key不存在时,返回nil127.0.0.1:6379> lrange numbers 0 -11) "2"2) "3"3) "4"4) "5"127.0.0.1:6379> lpush numbers 1(integer) 5127.0.0.1:6379> lrange numbers 0 -1 ##列表元素为 1 2 3 4 51) "1"2) "2"3) "3"4) ".

2020-08-25 16:31:14 345

原创 redis命令之哈希表类型lpop命令用法详情

列表LPOP命令命令:lpop key,移除并返回表头(左侧)的元素。当key不存在时,返回nil127.0.0.1:6379> flushallOK127.0.0.1:6379> rpush numbers 1 2 3 4 5(integer) 5127.0.0.1:6379> lrange numbers 0 -11) "1"2) "2"3) "3"4) "4"5) "5"127.0.0.1:6379> lpop numbers ##返回值为

2020-08-25 16:30:43 1976

原创 redis命令之哈希表类型rpushx命令用法详情

列表RPUSHX命令命令:rpushx key value,当且仅当key存在时将一个value插入到列表的表尾(右侧),并返回执行完之后当前列表的长度。当key不存在时,该命令不会执行任何操作。127.0.0.1:6379> flushallOK127.0.0.1:6379> llen numbers(integer) 0127.0.0.1:6379> rpushx numbers 1 ##key不存在时不会执行任何操作(integer) 0127.0.0.1.

2020-08-25 16:29:58 264

原创 redis命令之哈希表类型rpush命令用法详情

列表RPUSH命令命令:rpush key value [value...],将一个或者多个依次插入到列表的表尾(可以理解为逆时针旋转90°的栈,遵循LIFO,要注意LPUSH和RPUSH的区别),并返回执行完之后当前列表的长度。当同时插入多个value的时候是原子性操作,要么都成功,要么都不成功。...

2020-08-25 16:29:23 971

原创 redis命令之哈希表类型lpushx命令用法详情

列表LPUSHX命令命令:lpushxkey value,当且仅当key存在时将一个value插入到列表的表头(可以理解为逆时针旋转90°的栈,遵循LIFO),并返回执行完之后当前列表的长度。当key不存在时,该命令不会执行任何操作。特殊说明:想用次命令,只能先用lpush key value [value..],先建立key。127.0.0.1:6381> flushallOK127.0.0.1:6381> lpushx db redis mysql #db不存在时,不

2020-08-25 16:28:42 158

原创 redis命令之哈希表类型lpush命令用法详情

列表LPUSH命令命令:lpush key value [value...],将一个或者多个依次插入到列表的表头(可以理解为逆时针旋转90°的栈,遵循LIFO),并返回执行完之后当前列表的长度。当同时插入多个value的时候是原子性操作,要么都成功,要么都不成功。特殊的情况:1.如果key不存在,一个空列表会被创建并执行 lpush操作。2.当key存在但不是列表类型时,返回一个错误。127.0.0.1:6381> flushallOK127.0.0.1:63...

2020-08-25 16:27:26 1885

原创 VMware 安装linux操作系统Centos7中遇到的问题

1.安装完成之后是不能联网的。因为此时还没有添加网络网卡信息的,所以wget命令也会报错:Could not resolve host:mirrorlist.centos.org; Unknown error 本机无法连接网络的网络设置。这时,需要打开以太网设置:步骤1:在终端输入以下命令,查看安装在本机的网卡:[root@localhost ~]# nmcli d发现本机ens160的以太网ethernet处于关闭连接状态步骤2:在终端中输入以下命令,打开网络管理员:[root..

2020-08-24 10:54:44 766

原创 redis命令之哈希表类型hmset命令用法详情

哈希表HMSET命令命令:hmset key field value [field value...],给指定表key的field字段赋(或覆)值,命令执行成功返回OK,没有的key和field将新创建,并赋值。127.0.0.1:6381> flushallOK127.0.0.1:6381> hmset Jordan age 20OK127.0.0.1:6381> hmset Jordan age 18 sex manOK127.0.0.1:6381> h

2020-08-20 01:07:01 1729

原创 redis命令之哈希表类型hkeys命令用法详情

哈希表HKEYS命令命令:hkeys key,返回key的所有的域field,如果key不存在,返回值为(empty list or set),而不是nil127.0.0.1:6381> flushallOK127.0.0.1:6381> hkeys Jordan ##key不存在的时候返回值不是nil,而是empyt list or set(empty list or set)127.0.0.1:6381> hmset Jordan age 18 team bul

2020-08-20 01:06:53 486

原创 redis命令之哈希表类型hvals命令用法详情

哈希表HVALS命令命令:hvals key,返回指定表key下所有field的值,当key不存在的时候返回empty list or set,而不是nil127.0.0.1:6381> flushallOK127.0.0.1:6381> hvals Jordan(empty list or set)127.0.0.1:6381> hmset Jordan age 18 team bullOK127.0.0.1:6381> hvals Jordan1) "

2020-08-20 01:06:44 594

原创 redis命令之哈希表类型hgetall命令用法详情

哈希表HGETALL命令命令:hgetall key,返回对应key的所有的域field和与之对应的value,当key不存在时返回empty list or set,而不是nil127.0.0.1:6381> flushallOK127.0.0.1:6381> hgetall Jordan(empty list or set)127.0.0.1:6381> hmset Jordan age 18 team bullOK127.0.0.1:6381> hge

2020-08-20 01:06:37 4064

原创 redis命令之哈希表类型hincrbyfloat命令用法详情

哈希表HINCRBYFLOAT KEY FIELD INCREMENT命令命令:hincrbyfloat key field increment,将指定表key的field字段,按照increment增量进行加算,increment可以为负数,如果key field不存在,按照0进行初始化,并进行加运算,并将最终结果返回。127.0.0.1:6381> flushallOK127.0.0.1:6381> hincrbyfloat Jordan score 10.5"10.5"

2020-08-20 01:06:27 329

原创 redis命令之哈希表类型hmget命令用法详情

哈希表HMGET命令命令:hmget key field [field...],将按照指定的key和field,并按照指定field的顺序,将对应的value返回。如果key或者key的field不存在,将返回nil127.0.0.1:6381> flushallOK127.0.0.1:6381> hget Jordan age(nil)127.0.0.1:6381> hset Jordan age 18 sex man(integer) 2127.0.0.1:6

2020-08-20 01:06:19 3153

原创 redis命令之哈希表类型hincrby命令用法详情

哈希表HINCRBY KEY FIELD INCREMENT命令命令:hincrby key field increment,将指定表key的field字段,按照increment增量进行加算,increment可以为负数,如果key field不存在,按照0进行初始化,并进行加运算,并将最终结果返回。127.0.0.1:6381> flushallOK127.0.0.1:6381> HINCRBY Jordan age 10(integer) 10127.0.0.1:63

2020-08-20 01:04:22 1343

原创 redis命令之哈希表类型hsetnx命令用法详情(不支持多field)

哈希表HSETNX命令命令:hsetnx key filed value,该命令同时只能对一个域field进行操作,也就是说hsetnx命令如果同时对两个或多个field字段进行操作就会报错(所以,如果想通过hsetnx命令添加多个字段的话,只能一个命令一个命令的执行),并且如果field字段是新添加的字段的话会返回1,覆写value的话就会返回0127.0.0.1:6381> flushallOK127.0.0.1:6381> hsetnx user_id_1 name "J

2020-08-18 01:56:05 522

动态演示nio中的buffer相关操作.zip

可以动态演示nio中buffer的相关操作,直观看到各种重要数据的变化,方便大家更好的理解nio的buffer模型

2020-09-09

jcdy-pc (1).exe

需要用到打印进的可以拿来用,这个是精臣热敏打印机的驱动。下载下来按照步骤选择对应的选项就可以了

2020-08-18

securecrt64位破解版

securecrt64位破解版,直接按照教程即可安装使用

2019-04-28

redis3.0 64位

redis数据库缓存安装包 64位,有安装教程 改好配置文件就可以了 建议注册到服务里面 免得每次都要手动启动

2018-11-30

windows memcached-win64-1.4.4-14.zip

windows memcached-win64-1.4.4-14.zip

2016-03-06

eclipse的maven插件eclipse-maven-plugin.zip

eclipse的maven插件eclipse-maven-plugin.zip

2016-03-06

SQLyog _64位

专业64位windows的sqlyog ,供大家使用

2014-08-12

securecrt 7.0破解版含注册机

securecrt 7.0 里面包含了破解版以及注册机 非常好用

2014-08-12

电子版Json教程(PDF)

详细的Json教程 很全 很实用 很详细 任何人都能学的很轻松愉悦

2011-03-04

关于hibernate的实例

这是本人对hibernate做的实例,能够清楚的解释hibernate的内容,也许对您有所启发

2010-11-05

hibernate参考指南压缩包

一本关于hibernate参考指南的压缩包,这本书语言简单,我觉得这本书值得新手去阅读,也许对你有很大的提高

2010-11-03

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

TA关注的人

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