- 博客(35)
- 问答 (5)
- 收藏
- 关注
原创 BigDecimal 8中模式
不可变的、任意精度的有符号十进制数。BigDecimal 由任意精度的整数非标度值和32位的整数标度(scale)组成。 在银行、帐户、计费等领域,BigDecimal提供了精确的数值计算。其中8种舍入方式值得掌握。1、ROUND_UP 舍入远离零的舍入模式。 在丢弃非零部分之前始终增加数字(始终对非零舍弃部分前面的数字加1)。 注意,此舍入模式始终不会减少计算值的大小。2、ROUND_DOWN 接近零的舍入模式。 在丢弃某部分之前始终不增加数字(从不对舍弃部分前面的数字加1
2021-05-12 11:06:40
332
转载 Redis opsForZSet 用法
Redis opsForZSet 用法1、add(K key, V value, double score)添加元素到变量中同时指定元素的分值。Java代码 收藏代码redisTemplate.opsForZSet().add(“zSetValue”,“A”,1);redisTemplate.opsForZSet().add(“zSetValue”,“B”,3);redisTemplate.opsForZSet().add(“zSetValue”,“C”,2);redisTemplate.o
2021-04-26 14:16:46
6313
1
转载 Redis opsForValue用法
Redis中opsForValue()方法的使用介绍:1、set(K key, V value)新增一个字符串类型的值,key是键,value是值。redisTemplate.opsForValue().set(“stringValue”,“bbb”);2、get(Object key)获取key键对应的值。String stringValue = redisTemplate.opsForValue().get(“key”)3、append(K key, String value)在原有的值
2021-04-26 14:13:32
1338
转载 Redis opsForHash
Redis opsForHash1、put(H key, HK hashKey, HV value)新增hashMap值。Java代码 收藏代码redisTemplate.opsForHash().put(“hashValue”,“map1”,“map1-1”);redisTemplate.opsForHash().put(“hashValue”,“map2”,“map2-2”); 2、values(H key)获取指定变量中的hashMap值。Java代码 收藏代码List has
2021-04-26 14:01:16
1567
转载 Redis opsForList 简介
Redis opsForList 简介1、leftPush(K key, V value)在变量左边添加元素值。Java代码 收藏代码redisTemplate.opsForList().leftPush(“list”,“a”);redisTemplate.opsForList().leftPush(“list”,“b”);redisTemplate.opsForList().leftPush(“list”,“c”); 2、index(K key, long index)获取集合指定位置
2021-04-26 13:54:27
2919
原创 Java8 Collect收集Stream的方法
Collection, Collections, collect, Collector, CollectosCollection是Java集合的祖先接口。Collections是java.util包下的一个工具类,内涵各种处理集合的静态方法。java.util.stream.Stream#collect(java.util.stream.Collector<? super T,A,R>)是Stream的一个函数,负责收集流。java.util.stream.Collector 是一个收集
2021-04-25 11:42:46
338
原创 mybtis yml 配置
MyBatis配置mybatis: # 搜索指定包别名 typeAliasesPackage: # 配置mapper的扫描,找到所有的mapper.xml映射文件 mapperLocations: classpath*:mybatis/**/*Mapper.xml # 加载全局的配置文件 configLocation: classpath:mybatis/mybatis-config.xml...
2021-04-23 16:58:17
153
原创 redis安全控制 穿 击 雪
Redis安全控制**缓存穿透**产生的背景:缓存穿透是指使用不存在的key进行大量的高并发查询,导致缓存无法命中,每次请求都要都要穿透到后端数据库查询,使得数据库的压力非常大,甚至导致数据库服务压死;解决方案:1.接口层实现api限流、用户授权、id检查等;2.从缓存和数据库都取不到数据的话,一样将数据库空值放入缓存中,设置30s有效期避免使用同一个id对数据库攻击压力大;缓存击穿产生背景:在高并发的情况下,当一个缓存key过期时,因为访问该key请求较大,多个请求同时发现缓存过期,因此
2021-04-23 16:02:28
88
转载 java中Calendar类的常用方法
Calendar 类常用方法的记录:获取时间 // 使用默认时区和语言环境获得一个日历 Calendar cal = Calendar.getInstance(); // 赋值时年月日时分秒常用的6个值,注意月份下标从0开始,所以取月份要+1 System.out.println("年:" + cal.get(Calendar.YEAR)); System.out.println("月:" + (cal.get(Calendar.MONTH) + 1));
2021-04-21 12:32:03
209
转载 Java Calendar 日历类的时间操作 Timestamp Date Calendar 相互转换
**Java Calendar 日历类的时间操作 Timestamp Date Calendar 相互转换va Calendar 日历类的时间操作,这也许是 Java 环境下创建和管理日历及操作时间最简单的一个方案了,示范代码也很简单。演示了获取时间,日期时间的累加和累减,以及日期时间的比较。·原文地址:blog.youkuaiyun.com/joyous/article/details/9630893·**注意事项:Calendar 的 month 从 0 开始,也就是全年 12 个月由 0 ~ 11 进行
2021-04-21 11:44:12
1271
原创 Redis事务操作
Redis事务操作Multi: 开启事务EXEC: 提交事务Watch: **可以监听一个或者多个key,在提交事务之前是否有发生了变化,如果发生了变化就不会提交事务,没有发生变化才可以提交事务watch namemulti set name xiaomingexec****Discard**//取消提交事务注意:Redis 官方是没有提供回滚方法,只提供了取消事务Redis 本身就是单线程能够保证线程安全问题 不存在脏读Redis和Mysql中事务有哪些区别...
2021-04-20 14:12:58
80
原创 docker 安装Rabbitmq
docker pull rabbitmq 下载镜像docker run -d rabbitmq:3-management 启动镜像第一种方式docker run -d -p 15672:15672 -p 5672:5672 rabbitmq:3-management启动容器第二种方式docker run -it -d --hostname wd-rabbit --name rabbit -eRABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DE.
2021-04-14 20:32:24
119
转载 Rbbatmq命令
查看当前所有用户[root@VMTest ~]# rabbitmqctl list_users查看默认guest用户的权限[root@VMTest ~]# rabbitmqctl list_user_permissions guest由于RabbitMQ默认的账号用户名和密码都是guest。为了安全起见, 先删掉默认用户[root@VMTest ~]# rabbitmqctl delete_user guest添加新用户[root@VMTest ~]# rabbitmqctl a
2021-04-14 20:30:04
226
原创 Redis集群高可用环境主从复制
Redis主从复制基本概念:单个Redis如果因为某种原因宕机的话,可能会导致Redis服务不可用,可以使用主从复制实现一主多从,主节点负责写的操作,从节点负责读的操作,主节点会定期将数据同步到从节点中,保证数据一致性的问题相关配置Redis.confreplicaof slaveof 192.168.212.160 6379masterauth 123456info replication该主从同步方式存在 如果从节点非常多的话,会导致对主节点同步多个从节点压力非常大可以采用树状类
2021-04-14 14:32:06
159
1
原创 内存淘汰策略
将Redis用作缓存时,如果内存空间用满,就会自动驱逐老的数据。Redis六种淘汰策略noeviction:当内存使用达到阈值的时候,所有引起申请内存的命令会报错。allkeys-lru:在主键空间中,优先移除最近未使用的key。(推荐)volatile-lru:在设置了过期时间的键空间中,优先移除最近未使用的key。allkeys-random:在主键空间中,随机移除某个key。volatile-random:在设置了过期时间的键空间中,随机移除某个key。volatile-ttl:在设置了
2021-04-14 14:16:25
91
原创 Redis持久化机制
Redis持久化机制全量同步与增量同步的区别全量同步:就是每天定时(避开高峰期)或者采用一个周期实现将数据拷贝到一个地方也就是Rdb存储。增量同步:比如采用对行为的操作实现对数据的同步,也就是AOF。全量与增量的比较:增量同步比全量同步更加消耗服务器的内存,但是能够更加的保证数据的同步。RDB与AOF实现持久化的区别Redis提供了两种持久化的机制,分别为RDB、AOF实现,RDB采用定时(全量)持久化机制,但是服务器因为某种原因宕机后可能数据会丢失,AOF是基于数据日志操作实现的持久化,所以A
2021-04-14 13:57:04
403
原创 Redis Liunx 环境安装
Redis实战原理课程介绍核心技术点内容:1.Redis与其他缓存框架的对比2.Redis环境安装linux/windows3.Redis的数据类型与线程模型4.Redis持久化的机制RDB和AOF5.Redis队列的支持与事务6.Redis缓存淘汰策略实现方案7.Redis的高可用的机制8.Redis应用场景与解决方案Redis缓存框架基本介绍Redis 是完全开源免费的,是一个高性能的key-value数据库,目前市面上主流的数据库Redis、Memcache、Tair(淘宝自研
2021-04-14 13:42:03
185
原创 Elasticsearch 6.0,Kibana Liunx环境安装
`Elasticsearch 6.0 Liunx环境安装Elasticsearch简单介绍Elasticsearch (ES)是一个基于Lucene构建的开源、分布式、RESTful 接口全文搜索引擎。Elasticsearch 还是一个分布式文档数据库,其中每个字段均是被索引的数据且可被搜索,它能够扩展至数以百计的服务器存储以及处理PB级的数据。它可以在很短的时间内在储、搜索和分析大量的数据。它通常作为具有复杂搜索场景情况下的核心发动机。Elasticsearch就是为高可用和可扩展而生的。可以通
2021-04-13 14:14:06
257
转载 Linux常用命令大全
**Linux常用命令大全**查找已运行的jar包:ps -ef | grep java停止运行:kill -9 12121212运行jar包:nohup java -jar 123.jar &系统信息arch 显示机器的处理器架构uname -m 显示机器的处理器架构uname -r 显示正在使用的内核版本dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)hdparm -i /dev/hda 罗列一个磁盘的架构特性hdparm -tT /dev/
2021-04-13 13:46:37
74
原创 SpringBoo 入门
**@RestController在上加上RestController 表示修饰该Controller所有的方法返回JSON格式,直接可以编写Restful接口**@EnableAutoConfiguration注解:作用在于让 Spring Boot 根据应用所声明的依赖来对 Spring 框架进行自动配置这个注解告诉Spring Boot根据添加的jar依赖猜测你想如何配置Spring。由于spring-boot-starter-web添加了Tomcat和Spring MVC,所以auto
2021-04-13 11:47:34
179
原创 SpringCloud注册中心环境搭建
`SpringCloud注册中心环境搭建注解@EnableEurekaServer/写入服务器端@EnableEurekaClient//写入客户端配置yml:server: port: 8888 //端口号eureka: instance: hostname: localhost //地址 client: registerWithEureka: false fetchRegistry: false serviceUrl: defaul
2021-04-13 11:17:18
133
原创 Docker常用命令和docker run 和 docker start 区别
1.docker imagesdocker镜像文件2.docker ps查看正在运行的容器docker container exec -it f0b1c8ab3623 /bin/bash进入到容器f0b1c8ab3623 根据自己容器id进入3.docker ps –a查看所有的容器4.exit退出 容器5 docker version查看docker版本6. 启动容器docker run -d -p 81:80 nginx 启动nginx容器注意1: -d表示后台启动
2021-04-11 16:48:40
555
原创 获取时间戳方式
获取时间戳方式long time = new Date().getTime(); long l = System.currentTimeMillis();
2021-04-11 16:32:31
114
转载 Date时间戳string之间转换
Date时间戳string之间转换下面展示一些 内联代码片。// A code blockvar foo = 'bar';// An highlighted blockpublic class test { public static void main(String[] args) throws Exception { String stampStr = getTimeStampStr();//获取当前时间戳Str Long stampLong = g
2021-04-11 16:29:25
171
原创 全局捕获异常
全局捕获异常// An highlighted block@ControllerAdvice(basePackages = "com.xx.api.impl")public class GlobalExceptionHandler { @ExceptionHandler(RuntimeException.class) @ResponseBody public Map<String, Object> errorResult() { Map<String,
2021-04-11 16:18:53
62
原创 centOs7yum安装redis
、安装redis(使用这种方法安装redis不容易发生错误。使用源码安装make时可能会出现一些错误)1.安装数据源 yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm2.安装 yum install redis3.启动redis服务 systemctl start radis4.查看redis状态5.设置开机自启动systemctl enable redis.service6.查看r
2020-11-07 14:17:47
59
原创 安装cenTos7
1进BIOS修改u盘启动,修改启动(将源地址改为如下):按F2 进入修改setparams ‘Install CentOS linux 7’linuxefi /images/pxeboot/vmlinuz linux dd nomodeset quietinitrdefi /images/pxeboot/initrd .img安装完成ctrl+X保存 过后查看U盘的名称:如sdb4重启修改为:setparams ‘Install CentOS Linux 7’linuxefi
2020-11-07 13:56:20
1230
原创 centOS7 mysql安装
卸载mysql.查看mysql安装rpm -qa|grep -i mysql.卸载前关闭mysql服务rpm -ev --nodeps mysql-community-release-el7-5.noarchrpm -ev --nodeps mysql-community-common-5.6.38-2.el7.x86_64rpm -ev --nodeps mysql-community-client-5.6.38-2.el7.x86_64rpm -ev --nodeps mysql-comm
2020-11-07 13:53:37
51
原创 java jdk 动态代理 静态代理
什么是代理模式核心点:就是对我们的方法前后实现增强代理模式整个应用场景打印日志 Rpc的远程调用框架 Mybatis mapper Aop 事务 自定义注解 分布式事务全局id lcn seata 生成一个全局的事务id SpringBoot全局捕获异常代理模式优点减少代码冗余,提高代码复用性,安全性 隐藏真实角色、非侵入代理实现方式分类静态代理与动态代理静态代理:也需要开发者自己编写代理类静态的实现方式:1.实现接口...
2020-05-19 10:23:43
193
原创 mybatis注解开发
注解 使用对象 相对应的XML 描述@CacheNamespace 类 为给定的命名空间(比如类)配置缓存。属性有:implemetation, eviction, flushInterval, size, readWrite, blocking 和properties。@Property N/A 指定参数值或占位值(placeholder)(能被 mybatis-config.xml内的配置属性覆盖)。属性有:name, value。(仅在MyBatis 3.4.2以上版本生效)@CacheNa
2020-05-13 09:46:30
76
原创 QQ快速登录
qq互联的配置:app_ID = 101863669app_KEY = 0e8cc7c389abe3026cabb5da41733cd9//redirect_URI = http://wdn.natapp1.cc/qQloginCall只需要改以上三个scope = get_user_info,add_topic,add_one_blog,add_album,upload_pic,l...
2020-04-25 17:43:14
833
空空如也
第一次配置证书看看怎么解决
2021-12-19
配置证书的时候 前端访问后端接口失败有偿
2021-12-19
解决一下 找一天了没找到多谢了
2021-06-25
解决一天啦 没找到解决问题
2021-06-25
node.js npm install 的时候就报错
2021-04-20
Elasticsearch 启动的时候报错
2021-04-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人