自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

java学习者

奋斗

  • 博客(30)
  • 收藏
  • 关注

原创 mysql8从binlog恢复数据

mysql8从binlog恢复数据mysqlbinlog官方文档数据恢复数据恢复命令注意mysqlbinlog官方文档https://dev.mysql.com/doc/refman/8.0/en/mysqlbinlog.html数据恢复通过mysqlbinlog -v binlog.000001打印binlog信息,找到删库或者删表的位置 mysqlbinlog -v binlog.000001指定位置范围mysqlbinlog -v binlog.000001 --start-pos

2020-12-04 10:50:50 3542

原创 项目中错误总结1:springboot使用restTemplate报错java.net.HttpRetryException: cannot retry due to server authentic

我们的应用程序包含两个部分:服务器-提供REST服务客户端-通过Spring restTemplate使用它们除了HTTP状态外,我们的服务器还返回带有JSON的HTTP正文,其中详细描述了错误。因此,我在restTemplate中添加了自定义错误处理程序,以将某些错误编码为非错误-它有助于很好地解析HTTP正文。为获取异常,不抛异常@Beanpublic RestTemplate restTemplate(ClientHttpRequestFactory factory) throws

2020-05-15 15:25:16 7941

转载 阿里JAVA面试题总结

JAVA基础JAVA中的几种基本数据类型是什么,各自占用多少字节。 String类能被继承吗,为什么。 String,Stringbuffer,StringBuilder的区别。 ArrayList和LinkedList有什么区别。 讲讲类的实例化顺序,比如父类静态数据,构造函数,字段,子类静态数据,构造函数,字段,当new的时候,他们的执行顺序。用过哪些Map类,都有什么区别,...

2019-12-12 09:34:31 219

原创 用过哪些 Map 类,都有什么区别,HashMap 是线程安全的吗,并发下使用的 Map 是什么,他们内部原理分别是什么,比如存储方式, hashcode,扩容, 默认容量等

JAVA Map的几种类型:HashMap、HashTable、LinkedHashMap和TreeMap。HashMap HashMap 是一个最常用的Map,它根据键的HashCode值存储数据,根据键可以直接获取它的值,具有很快的访问速度。遍历时,取得数据的顺序是完全随机的。 HashMap最多只允许一条记录的键为Null;允许多条记录的值为 Null...

2019-12-11 20:41:25 1745

原创 讲讲类的实例化顺序,比如父类静态数据,构造函数,字段,子类静态数据,构造函数,字段,当 new 的时候, 他们的执行顺序

父类静态变量、父类静态代码块、子类静态变量、子类静态代码块、父类非静态变量(父类实例成员变量)、父类构造函数、子类非静态变量(子类实例成员变量)、子类构造函数。详情参考https://blog.csdn.net/xybelieve1990/article/details/48678603...

2019-12-11 20:27:25 219

转载 String,Stringbuffer,StringBuilder的区别

String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所...

2019-12-11 09:50:46 99

原创 String类能被继承吗,为什么

String 类是不能被继承的,因为他是被final关键字修饰的。public final class String implements java.io.Serializable, Comparable<String>, CharSequence { /** The value is used for character storage. */ priva...

2019-12-10 16:02:58 342

原创 JAVA中的几种基本数据类型是什么,各自占用多少字节

Java基本数据类型有8种:  名词解释: bit:位,计算机存储数据的最小单位,二进制数中的一个 位数。 byte:字节,计算机存储数据的基本单位,一个字节由8位二进制数组成。通常一个汉字占两个字节。...

2019-12-10 16:01:16 293

原创 redisTemplate+redis+lua解决redis分布式锁集群报错问题

因项目dev环境是单台redis,redis+lua实现分布式锁并没有问题,预生产是集群的redis,报错EvalSha is not supported in cluster environment 下面是正确的集群解决方案package com.zuma.coupon.util;import com.zuma.common.utils.StringUtils...

2019-11-07 11:08:56 1360 2

原创 用redis分布式锁+lua实现库存量的减少

近来需要做一个优惠券的功能,因优惠券是有数量限制的,所以想到了用redis的分布式锁来实现库存的变更,当然,也可以用到商品的库存变更。首先,为了确保分布式锁可用,我们至少要确保锁的实现同时满足以下四个条件:互斥性。在任意时刻,只有一个客户端能持有锁。 不会发生死锁。即使有一个客户端在持有锁的期间崩溃而没有主动解锁,也能保证后续其他客户端能加锁。 具有容错性。只要大部分的Redis节点正...

2019-08-27 09:37:39 1003

原创 redis通过ip限制接口访问次数(用注解形式实现)

近期开发中,短信接口被不明人士调用,注册的手机号码都无法打通,而且手机号码还不同,因短信平台对同一个手机号码做的有限制,所以公司这边需要做一个针对IP对短信进行限制。1、先写一个自定义注解@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.METHOD)public @interface Limiter { ...

2019-08-26 20:57:36 1112

转载 简述TCP的三次握手过程

TCP握手协议在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接.第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;SYN:同步序列编号(SynchronizeSequenceNumbers)第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(sy...

2019-07-15 21:05:17 1761

原创 Java反射

一、什么是反射机制 简单的来说,反射机制指的是程序在运行时能够获取自身的信息。在java中,只要给定类的名字, 那么就可以通过反射机制来获得类的所有信息。反射的概念:在java中,反射机制是指在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取信息以及动态调用对象方法的功能称为JAVA的反射机制...

2019-07-05 15:51:49 129

原创 关于MySQL数据库根据字符串多少 类型选择

关于MySQL数据库存储大字符串类型长度根据所要存取字符长度及MySQL数据库版本,选择字段类型(1)选择VARCHAR 类型MySQL5.0以下版本 MySQL5.0以上版本VARCHAR 最大长度 255 65535(2)如果VARCHAR类型不能满足你存取字符串长度的需求,那么应选择以下字符字段类型类型 最大长度TEXT 65535MEDIU...

2019-05-22 09:42:28 380

原创 Springmvc+mongoTemplate整合

首先在配置中加入<!-- MongoDB配置 --><mongo:mongo-client replica-set="${jdbc.mongoDB.replicaSet}" credentials="${jdbc.mongoDB.credentials}" id="mongo"> <mongo:client-options write-concern=...

2019-05-09 13:15:51 1138

原创 mybatis打印sql语句

首先复制来下面的xml文件:<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><...

2019-05-03 13:38:08 257

原创 springmvc+websocket+redis 解决服务器集群问题

在有的业务中,当更改状态时,可能需要大量的轮询来实现,用websocket能够很好的实现,但是因为工作中很多都是采取服务器集群来实现的,所以对集群情况下的websocket进行了学习,在围观大佬之后,进行了改造,使之贴合我们公司架构,springmvc。github地址:https://github.com/onthewayw/springmvc_websocket_mq.git1:pom...

2019-04-15 20:10:49 2291 4

转载 window.open打开新窗口被浏览器拦截及决方案

window.open是javascript函数,该函数的作用是打开一个新窗口或这改变原来的窗口,如果你直接在js中调用window.open()函数去打开一个新窗口,浏览器会拦截你,那么如何避免呢。注意,只有直接使用js调用 window.open(url); 打开新窗口时,才会被拦截,如果是改变原理额窗口:window.open(url,'_self'); 则不会被拦截。那么 js调用...

2019-04-12 14:27:11 1436

原创 springmvc+mybatis下批量插入和批量更新

// 查询出没有的需要插入的// 1:将查询出的list转为mapMap<Long, ImCategoryBean> imCategoryMap = imCategoryBeanList.stream().collect(Collectors.toMap(ImCategoryBean::getfCategoryId, imCategoryBean -> imCategory...

2019-04-03 20:52:36 2140

原创 linux 中tomcat无缘无故的关闭

在开发服务器中,每天早上上班就发现tomcat自动停止了。但是查log的情况下并没有发现问题。发现时脚本中的tail -f在作怪tail -f shows the logs continuously so the script doesn't finish it's execution automatically. When the ssh connection timed out w...

2019-01-12 11:41:24 4733

原创 报错解决:java.io.IOException: invalid constant type: 18

在项目中打包,遇到报错信息java.io.IOException: invalid constant type: 18是缺少javassist的包,在pom.xml中引入<dependency> <groupId>org.javassist</groupId> <artifactId>javassist</artifact...

2019-01-08 19:07:09 7939

原创 java8 lamda表达式实现查询redis在线客服问题

//1 查出来当前在线的人员Set<String> keySet = redisCacheUtil.getCacheObjectAll(ImEnum.REDIS_ONLINE.getName() + "*");ArrayList<ImLoginStatusBean> onlineUsers = new ArrayList();keySet.stream().forE...

2018-12-19 21:17:45 275

原创 实现剪切板粘贴上传图片并返回URl显示图片

在写聊天功能时,需要实现剪切板粘贴上传图片并返回URl显示图片$('#input-area').bind("paste", function(){ //获取截图 var items = (event.clipboardData || window.clipboardData).items; var file = null; if (items &...

2018-12-04 21:22:02 1236

原创 js键入enter,禁止换行

在做聊天时,需要进行对换行进行禁止if (event.which == 13) { // 禁止换行 event.cancelBubble=true; event.preventDefault(); event.stopPropagation();}

2018-11-24 10:27:18 1717

原创 网页版聊天功能 contentEditable属性,角标问题

在做聊天功能时,用的新浪的表情插件,当点击插件中的表情时,无法将角标放在表情之后。以下是解决方法:function moveToEnd(el) { if (typeof el.selectionStart == "number") { el.selectionStart = el.selectionEnd = el.value.length; } else ...

2018-11-23 17:16:29 552

转载 JDK1.8开发文档保存

JDK1.8 中文开发帮助文档转载的目的,在于方便浏览与查看;但是该文章目前还没有找到原文的出处,找到了马上附加上!!! 英文版:Oracle 官网在线 JDK1.9 文档:https://docs.oracle.com/javase/9/docs/api/Oracle 官网在线 JDK1.8 文档:https://docs.oracle.com/javase/8/do...

2018-11-22 20:26:43 277

原创 linux Centos7 安装redis及使用过程

1、安装redis数据库yum install redis2、下载fedora的epel仓库yum install epel-release3、启动redis服务systemctl start redis4、查看redis启动状态systemctl status redissystemctl stop redis 停止服务systemctl resta...

2018-11-21 20:37:47 108

转载 秒杀系统架构分析与实战

1 秒杀业务分析正常电子商务流程(1)查询商品;(2)创建订单;(3)扣减库存;(4)更新订单;(5)付款;(6)卖家发货 秒杀业务的特性(1)低廉价格;(2)大幅推广;(3)瞬时售空;(4)一般是定时上架;(5)时间短、瞬时并发量高;2 秒杀技术挑战假设某网站秒杀活动只推出一件商品,预计会吸引1万人参加活动,也就说最大并发请求数是10000,秒杀系统需要面对的技术挑战有:对现有网...

2017-12-22 10:04:28 245

转载 java多线程

如果对什么是线程、什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内。用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个话其实只有一半对,因为反应“多角色”的程序代码,最起码每个角色要给他一个线程吧,否则连实际场景都无法模拟,当然也没法说能用单线程来实现:比如最常见的“生产者,消费者模型”。很多人都对其中的一些概念不...

2017-06-26 23:41:53 185

原创 java中vector,array,list,arraylist的区别

Arrays数组,Vector,List,Map,Set。 数组和其它容器的区别主要有三方面:效率,类型,和保存基本类型的能力.在Java中,数组是一种效率很高的存储和随机访问对象引用序列的方式.数组是一个简单的线性序列,因此访问速度很快,但也损失了其它一些特性.创建一个数组对象后,大小就固定了,如果空间不够,通常是再创建一个数组,然后把旧数组中的所有引用移...

2017-06-26 23:37:59 5250

空空如也

空空如也

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

TA关注的人

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