自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

qq_2300688967的博客

不是在学习,就是在学习的路上~

原创 为Spring boot项目添加tomcat访问日志教程

一,首先说下添加访问日志的必要性1,方便定位问题:当外部人员调用我们的接口时,不用每次都为我们提供完整的URL和参数,只需要提供requestId等关键字即可然后我们根据requestId来获取到相应的日志2,方便查询访问情况:当请求我们的接口的不同参数值时可能走了我们不同的业务逻辑分支,此时如果想知道执行业务逻辑A的情况时,只需要根据关键的参数值来搜索对应的日志即可3,做数据统计:根据访问日志来统计用户情况,QPS等反正就是有了访问日志好处多多...二,如何对spring boot

2020-05-15 19:57:53 151

原创 spring boot多模块,请求时报错如下:Invalid bound statement (not found)

问题当发起一个请求时报错如下:Invalidboundstatement(notfound):com.xxx.xxx.configcenter.common.mapper.ConfigDataMapper.saveConfigData场景本人的项目是一个多模块的项目,其中模块B依赖模块A,模块A的application.yml中配置如下:mybatis: mapper-locations: classpath:mappers/*.xml而模块B中无此配置,当针对模块B的请...

2020-05-13 11:35:27 191

原创 Axure 软件自带的图标元件Icons无法显示的问题解决方法

当我们在使用Axure进行原型设计时,往往需要使用到图标,可是有时软件自带的图标却无法显示出来,这就比较为难各位设计者了。不过看到本文就不用担心了,问题复现及解决方法如下:1,问题复现:如下图所示,当我们在左下角选择“Icons”一栏后,对应的列表中只显示各个icon元件的标题,图标中图象却全部为空白状态2,问题解决:找到Axure的安装目录:比如本人的安装目录为:G:\Progr...

2020-04-29 23:19:43 512

原创 Outlook配置163个人邮箱指导教程

1,通过PC端163官网登陆自已的邮箱:https://mail.163.com2,如下图所示,2.1 首先点击“设置”,2.2 然后弹框中找到并点击“POP3/SMTP/IMAP”选项2.3其次开启IMAP/SMTP服务和POP3/SMTP服务2.4在页面下方的“授权密码管理”添加授权密码,此密码为自动生成密码,且为用户登陆第3方邮件客户端专用密码而outlook客户...

2020-04-13 21:09:14 643

原创 Lua基础函数

1,table.concat(table, sep,start, end) 连接函数concat是concatenate(连锁, 连接)的缩写. table.concat()函数列出参数中指定table的数组部分从start位置到end位置的所有元素, 元素间以指定的分隔符(sep)隔开。除了table外, 其他的参数都不是必须的, 分隔符的默认值是空字符, start的默认值是1, e...

2020-04-13 11:46:12 56

原创 java AOP切面编程实践

本示例为一个基于注解的切面编程实践,该切面功能:主要是用来统计被注解标识的方法执行时的耗时时长1,首先 配置maven依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</arti...

2020-01-18 20:34:07 147

原创 maven常见错误

1,Could not find artifact org.springframework.boot:spring-boot-maven-plugin:pom:2.2.3.RELEASE inxxxx(企业私服)原因:公司仓库中不存在对就的jar包,所以需要到其它中心仓库中下载解决:推荐到阿里云仓库中下载:找到maven的配置文件setting.xml配置maven仓库镜像:...

2020-01-18 17:41:12 100

原创 Linux常用命令(五 ) du 命令,磁盘空间使用情况

1,查看当前目录相关大小1) du -sh: 查看当前目录下文件大小的总和1)du -sh *:显示当前目录下各个文件的大小2) du -sh fileName:查看fileName文件的大小2,所有目录相关大小du -h:显示所有目录(包含当前目录和非当前目录)下的各个文件夹的大小, 其中输出结果中的"."表示当前文件夹注:du表示disk usage: 磁盘...

2020-01-01 15:01:48 89

原创 Java8 Stream流遍历常见用法

1,flatmap既可以单一转换也可以一对多/多对多转换,flatmap要求返回Observable,因此可以再内部进行from/just的再次事件分发,一一取出单一对象(转换对象的能力不同)如adDataVOS里面有个Freq对象属性,而Freq对象属性里又有个List<Frequency> frequency对象集合属性,想通adDataVOS直接获取其下的所有freque...

2019-12-28 12:07:15 748

原创 android开发常见问题

1,okhttp请求报错如下:1)java.net.SocketException: socket failed: EACCES (Permission denied)解决:需要在manifest中添加网络权限配置 <uses-permission android:name="android.permission.INTERNET"/>2)添加了网络权限后,仍然报错...

2019-12-22 00:19:56 71

原创 com.netflix.discovery.shared.transport.decorator.RedirectingEurekaHttpClient

寻视线上环境日志时,发现了如下错误,查了一下,得知可能是eureka服务注册中心不可用导致的,不过检查了一下服务注册中心项目,发现是正常运行的,且这个错误日志只是偶尔出现,所以就有些困惑了。排查过程:1,然后我找到报错的这个项目的线上环境关于eureka的配置,然后对其可能注册到的所有eureka注册中心都一一进行访问,发现前两个都是正常可以访问的,正纳闷时,第3个注册中心的ip与端口...

2019-12-06 12:24:51 1287

原创 fiddler的使用教程

1,dubughttp请求1)只对某个具体的url请求进行debug:方法1:在QuickExec命令行中输入"bpu url",然后回车bup localhost:8861/test此时请求http://localhost:8081/test,则fiddler会将拦截到的localhost:8861/test进入debug模式,我们可以在请求tab中的raw中修改所有的请求信...

2019-11-25 02:46:41 101

原创 fiddler代理 java 项目中接口调用

1,RestTemplate模板 @Bean public RestTemplate restTemplate() { SimpleClientHttpRequestFactory simpleClientHttpRequestFactory = new SimpleClientHttpRequestFactory() { @Over...

2019-11-22 23:13:17 88

原创 windows环境下kafka的安装

1,安装zookeeper(至于为何使用kafka要先安装zookeeper请自行百度)打开官方下载网页:https://zookeeper.apache.org/releases.html1)点击页面中的Download,如下所示:2)建议选择官方推荐的stable版本下载从目前的最新版本3.5.5开始,带有bin名称的包才是我们想要的下载可以直接使用的里面有编译后...

2019-10-13 18:51:00 52

原创 java HttpClientUtil 请求模板

package com.xxxx.util;import org.apache.http.*;import org.apache.http.client.HttpClient;import org.apache.http.client.config.RequestConfig;import org.apache.http.client.entity.UrlEncodedFormEnti...

2019-09-26 14:05:39 75

原创 Http BODY中存放二进格式参数数据 的POST请求

方法一,使用原始HttpURLConnection方法 public static byte[] post(String url, byte[] requestBytes) { // TODO 设置连接池 InputStream in = null; byte[] data = null; try { ...

2019-09-19 22:28:19 480

原创 如何在同一电脑用SSH协议与不同代码托管平台下的不同账号便捷通信

通过SSH免密提交代码到github,屡用不爽啊,本人很喜欢。本人两个github账号count A和count B,分别记录不同的东西,先前一台电脑上只使用一个账号 count A,并没有发现什么问题。问题:但是最近准备也同时在本电脑上使用另一个count B账号,在添加公钥到github时,提示"Key is already in use",原因是这个电脑上的公钥已经配置到coun...

2019-09-01 07:41:24 93

原创 Java8 Stream流遍历 使用其自带的索引遍历(二)

Java8的Stream流为我们的遍历集合带来了方便,基本可以取代for循环了。但是有一些情况需要知道当前遍历的索引,使用for循环当然可以轻易获得,但使用stream就很难了。但是并不是没有办法的事,如下所示一,代码示例1)Lambda.classpackage com.example.demo.main;import com.example.demo.Bean.Food;i...

2019-08-28 02:11:20 2003

原创 GRPC通过Eureka调用时 UNKNOWN 的问题

当我们调用Eureka上的服务时,发现报如下错误,则表明了当前服务获取到了Eureka上的服务实例列表,但问题出现在对服务实例列表中的数据进行请求时,实例却无法访问导致的。此时应该进行以下两点检查,一般应该是以下两点中的其中一点:1,查找注册中心中存在的当前调用的所有服务实例,看是否存在当前服务无权限访问的服务或如果开启了Eureka自我保护模式,则查看是否存在已经挂掉却被注册中心保护起来...

2019-08-18 19:39:42 345

转载 Netflix是什么,与Spring Cloud有什么关系

说明:以下总结的观点不一定准确,但是是最好理解的。1、首先,Netflix是一家做视频的网站,可以这么说该网站上的美剧应该是最火的。2、Netflix是一家没有CTO的公司,正是这样的组织架构能使产品与技术无缝的沟通,从而能快速迭代出更优秀的产品。在当时软件敏捷开发中,Netflix的更新速度不亚于当年的微信后台变更,虽然微信比Netflix迟发展,但是当年微信的灰度发布和敏捷开发应该算是...

2019-08-07 22:39:24 292

原创 Mysql 覆盖索引及其使用注意事项

一,什么叫覆盖索引网上对覆盖索引的定义有如下三种:解释一: 就是select的数据列只用从索引中就能够取得,不必从数据表中读取,换句话说查询列要被所使用的索引覆盖。 解释二: 索引是高效找到行的一个方法,当能通过检索索引就可以读取想要的数据,那就不需要再到数据表中读取行了。如果一个索引包含了(或覆盖了)满足查询语句中字段与条件的数据就叫做覆盖索引。 解释三:是非聚集组合索引的一种形式,...

2019-08-04 03:23:33 266

原创 SendGrid 发送邮件代码示例

build.gradle/* * This file was generated by the Gradle 'init' task. * * This generated file contains a sample Java Library project to get you started. * For more details take a look at the Java...

2019-07-24 16:45:16 537

原创 Redis缓存和MySQL数据一致性3种方案详解

需求起因在高并发的业务场景下,数据库大多数情况都是用户并发访问最薄弱的环节。所以,就需要使用redis做一个缓冲操作,让请求先访问到redis,而不是直接访问MySQL等数据库。这个业务场景,主要是解决读数据从Redis缓存,一般都是按照下图的流程来进行业务操作。读取缓存步骤一般没有什么问题,但是一旦涉及到数据更新:数据库和缓存更新,就容易出现缓存(Redis)和数据库(MyS...

2019-07-20 16:16:00 387

转载 BitSet的应用实践

1.BitSet介绍BitSet是用于存储二进制位和对二进制进行操作的Java数据结构,BitSet从jdk1.0开始就有了。它存储的是二进制位在BitSet中状态,根据对这些状态的判断,可以有很多应用。以前对数据的操作都是先把数据都是存储在内存中间的,现在可以通过设置BitSet的相应位达到存储数据信息的目的,极大的节省了内存空间。2.BitSet应用BitSet可以做的事情主要分为...

2019-07-13 23:17:44 41

转载 BitSet实现原理解析

1.BitSet介绍Bitset是Java中的一种数据结构。Bitset中主要存储的是二进制位,做的也都是位运算,每一位只用来存储0,1值,主要用于对数据的标记。Bitset的基本原理是,用1位来表示一个数据是否出现过,0为没有出现过,1表示出现过。使用的时候可以根据某一个位是否为0表示此数是否出现过。JDK中的BitSet集合对是布隆过滤器中经常使用的数据结构Bitmap的相对简单的实现...

2019-07-13 22:41:41 106

原创 从矩阵同创公司“老板椅”事件看职场交流

关一个程序员和一位HR之间的“老板椅”事件在网络上引起发酵,由于是在某匿名职场社交平台得到广大职场人的关注,这件事是怎么回事呢?看了如下漫画,你便知晓事情是如上发生的,某程序员的老板椅被HR让某阿姨搬到了老板办公室,但是发生的场所可能有些特殊,是在一个有24个同事在内的公司内部群中。当聊天截图被发送到公司外部时,引起很多人的关注,大家议论纷纷,当90%的人认为这位HR应该被开除时,出乎...

2019-07-12 02:08:12 963

原创 Integer对象比较时的注意事项

1,关于Integer对象的比较,主要是注意如下知识点(xxx表示某个整数值);Integer a1 = xxx;与Integer a1 = Integer.valueOf(xxx);是完全相同的赋值方式的,只是前者是自动装箱,后者是手动编码装箱,以下可以说明:对于如下code public static void main(String[] args) { ...

2019-07-10 18:35:29 153

转载 Java并发之彻底搞懂偏向锁升级为轻量级锁

网上有许多讲偏向锁,轻量级锁的文章,但对偏向锁如何升级讲的不够明白,有些文章还相互矛盾,经过对jvm源码(biasedLocking.cpp)的仔细分析和追踪,基本升级过程有了一个清晰的过程,现将升级流程阐述如下: 因为偏向锁,锁住对象时,会写入对象头相应的标识,我们先把对象头(官方叫法为:Mark Word)的图示如下(借用了网友的图片): 通过上面的图片,...

2019-07-09 10:39:13 696 1

转载 JAVA 对象的按值传递

很多程序设计语言(特别是,C++和Pascal)提供了两种参数传递的方式:值调用和引用调用。有些程序员(甚至本书的作者)认为Java程序设计语言对对象采用的是引用调用,实际上,这种理解是不对的。由于这种误解具有一定的普遍性,所以下面给出一个反例来详细地阐述一下这个问题。public class Test { public static void main(String[] args) {...

2019-06-28 17:37:48 362

原创 注解的实现原理 和 如何自定义注解

Table of Contents什么是注解注解的用处注解的原理元注解常见标准的Annotation注解处理器类库自定义注解自定义注解实例什么是注解 对于很多初次接触的开发者来说应该都有这个疑问?Annontation是Java5开始引入的新特征,中文名称叫注解。它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)...

2019-06-28 15:11:57 367

转载 创建线程的方式及实现

Java中创建线程主要有三种方式:一、继承Thread类创建线程类(1)定义Thread类的子类,并重写该类的run方法,该run方法的方法体就代表了线程要完成的任务。因此把run()方法称为执行体。(2)创建Thread子类的实例,即创建了线程对象。(3)调用线程对象的start()方法来启动该线程。package com.thread;public class Fir...

2019-06-27 18:34:38 52

原创 阿里云ECS上搭建MySql数据库

1,登陆到ECS服务实例上ssh root@123.56.104.1062,下载mysql的YUM源:wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm3,安装MySQLyum install mysql-community-server安装过程中一直输入"y"就可以了4,启...

2019-06-27 15:01:39 363

原创 使用阿里云ECS搭建网站教程

1,首先购买服务器其它非学生购买服务器登陆阿里云即可看到;特殊的,这里附上阿里云学生服务器购买链接,:https://promotion.aliyun.com/ntms/act/campus2018.html?spm=5176.230344.1224685.2.1014443esaFB8b学生认证链接:https://account.console.aliyun.com/?spm=51...

2019-06-27 11:20:03 191

原创 json4j equals 使用注意事项

技术实背景:org.apache.wink.json4j 中JSONObject间接继承了AbstractMap类,而AbstractMap重写了equals和hasCode方法,所以我们在做JSONObject进行equals进行比较时,不用再重写equals1,问题,突然有一次,我如何调试也无法通过equals来判断出两个参数值一样的json对象是相等的结果,拿如下代码做为示例:...

2019-06-12 22:41:32 96

原创 Eclipse,Jacoco在gradle配置时的注意事项

gradle文件:apply plugin: 'java'apply plugin: 'jacoco'dependencies { compile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.5.5' // .... 此处省略其它依赖 ...

2019-05-28 00:47:46 397

原创 Mybatis mysql错误:Column count doesn't match value count at row 1

当使用mybatis写好了sql运行时,报错部分内容如下Error updating database. Cause: java.sql.SQLException: Column count doesn't match value count at row 1\r\n### The error may involve com.network.dailyplanner.dao.EventDao...

2019-05-26 03:39:51 2811 3

原创 把Sublime添加到Mac右键菜单

1, search the application: automator, thendouble click it找到这个软件:automator,然后双击它打开2, Choose the "Quick Action" in the pop box弹框中选择“服务”3, Input"finder" in the searchbox in the upper left...

2019-05-23 16:28:01 595

原创 Notes quit unexpectedly

1,鼠标放到电脑桌面空白处,然后按键“Option”同时点击电脑左上边的菜单选项2,选择列表中的“Library”,跳到打开的目录中3,在Library的子目录“Containers”找到“com.Apple.Notes”,将其移出Containers文件夹(可以放到桌面)4,然后再点击Notes启动应用,但是点continue进行登陆,此时Containers下会自动生成同样的“co...

2019-05-16 18:50:47 168

转载 Selenium Webdriver元素定位的八种常用方法

在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素句柄来定位元素。其中By类的常用定位方式共八种,现分别介绍如下:1. By.name()假设我们要测试的页面源码如下:<button id="gbqfba" aria-label="Google Search" name="btnK" cla...

2019-04-23 19:08:53 67

转载 Selenium Driver.SwitchTo() frame 的用法

1.为什么需要有frame?因为一个页面如果只有一个html,所有内容都要用表格来分是很难而且很丑,所以引进了frame可以将左侧树、右侧内容,顶端导航轻松分开。那么我们也有应对的方法就是要操作哪个元素先进入这个对应元素的frame里,一般frame有name或id属性。如下图2.解决进入frame的方法1.iFrame有ID 或者 name的情况dr.switchTo(...

2019-04-23 17:44:09 768

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