自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(94)
  • 资源 (21)
  • 收藏
  • 关注

转载 Java 源码分析(二)线程池

线程池源码也是面试经常被提问到的点,我会将全局源码做一分析,然后告诉你面试考啥,怎么答。为什么要用线程池?简洁的答两点就行。 降低系统资源消耗。 提高线程可控性。 如何创建使用线程池?JDK8提供了五种创建线程池的方法:1.创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。public static ExecutorService n...

2019-07-01 11:32:04 118

原创 MySQL常见SQL错误用法

前言越来越多的客户将自己的应用建立在MySQL数据库之上,甚至是从Oracle迁移到MySQL上来。但也存在部分客户在使用MySQL数据库的过程中遇到一些比如响应时间慢,CPU打满等情况。阿里云RDS专家服务团队帮助云上客户解决过很多紧急问题。现将《ApsaraDB专家诊断报告》中出现的部分常见SQL问题总结如下,供大家参考。常见SQL错误用法1. LIMIT 语句分页查询是最常用...

2019-07-01 10:39:59 213

原创 Java 源码分析(一)集合

Java 集合 包括 list,map,set集合集合与数组数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用。集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用。注:数组我在前面的博客讲了大家可以看下集合中接口和类的关系Collection接口是集合类的根接口,Java中没有提供这个接口的直接的...

2019-05-21 16:59:54 127

原创 Java Web架构知识整理——记一次面试经历

“你学习一门技术的最佳时机是三年前,其次是现在。”这话从来很灵验。经过这次面试,觉得需要整理下Java Web相关的资料,以便自己提高或者更快适应可能面临的新的工作。首先谈谈Java Web需要掌握哪些东西。这里是一些知识点的搜集,暂不做详细说明,欢迎各位博友补充指正。1.底层 Java语言相关的就不说了,首先是JVM的结构和工作原理。比较重要的是Java内存模型,各种GC算法,Cl...

2019-05-21 16:32:56 127

原创 IDEA 配置 管理 连接 MySQL 数据库 工具

1.打开idea界面右侧的database,打开后选择MySQL2.进入配置页面驱动配置好显示状态如下3.配置连接参数4.连接成功

2019-04-30 16:38:16 1057

原创 分布式锁 redis

可靠性首先,为了确保分布式锁可用,我们至少要确保锁的实现同时满足以下四个条件: 互斥性。在任意时刻,只有一个客户端能持有锁。 不会发生死锁。即使有一个客户端在持有锁的期间崩溃而没有主动解锁,也能保证后续其他客户端能加锁。 具有容错性。只要大部分的Redis节点正常运行,客户端就可以加锁和解锁。 解铃还须系铃人。加锁和解锁必须是同一个客户端,客户端自己不能把别...

2019-04-28 11:42:22 135

原创 tomcat 8.5 第一次启动正常,关闭后无法再次启动问题

问题描述:使用Linux系统: centos_7_06_64_20G_aliba... jdk1.8.0_172 apache-tomcat-8.5.35 开放端口:80;8080;3679....解压tomcat后第一次使用 ./startup.sh命令 启动tomcat ,使用 ip:8080 可以访问tomcat主页;此时使用./shutdown.sh 命令关闭tomcat可...

2019-04-26 23:35:37 1998 1

转载 程序员如何精确评估开发时间?

一个程序员能否精确评估开发时间,是一件非常重要的事情。如果你掌握了这项技能,你在别人的眼里就会是这样:靠谱经验十足对需求很了解延期风险小合格的软件工程师正规军,不是野路子评估开发时间的重要性首先,在一个项目中,所有的环节都是承上启下的,上一个环节结束的时间节点正是下一个环节开始的节点。那么在一个项目或者一次迭代正式启动前,所有的环节都应该有个时间评估。以一次APP需...

2019-04-24 16:40:08 135

原创 Linux 内存 占用较高问题排查

一 查看内存情况#按 k 查看free#按兆M查看free -mtotal:总计物理内存的大小。 used:已使用多大。 free:可用有多少。 Shared:多个进程共享的内存总额。 Buffers/cached:磁盘缓存的大小。 #所以空闲内存=free+buffers+cached=total-used内存的使用情况cat /proc/memi...

2019-04-24 14:31:55 62885 2

原创 Java spring 使用线程池以及@Async 注解用法

一 springboot 注解方法 使用线程池1.首先启动类上增加@EnableAsync注解package cc.mrbird;import cc.mrbird.common.config.NniuhaoProperies;import org.mybatis.spring.annotation.MapperScan;import org.slf4j.Logger;impor...

2019-04-22 10:53:23 1805

原创 JdbcTemplate 使用报错 Incorrect result size: expected 1, actual 0

使用类:org.springframework.jdbc.core.JdbcTemplate报错:org.springframework.dao.EmptyResultDataAccessException: Incorrect result size: expected 1, actual 0 at org.springframework.dao.support.Dat...

2019-04-16 16:08:24 2523

原创 vue 学习笔记(一)

错误信息:error in ./~/_element-ui@2.7.2@element-ui/packages/form/src/label-wrap.vueSyntax Erroe:Unexpected token (20:14解决办法:先安装依赖:cnpm install在node_moudel里面找到 element-ui下载;https://dow...

2019-04-15 15:46:12 1092

转载 slf4j使用方式

使用slf4j使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。 实现方式统一使用:Logback框架打日志的正确方式什么时候应该打日志当你遇到问题的时候,只能通过debug功能来确定问题,你应该考虑打日志,良好的系统,是可以通过日志进行问题定为的。 当你碰到if…else 或者 switch这样的分支时,要在分支的首行打印日志,用来确定进入了哪个分支 经常以功能...

2019-04-15 09:51:16 254

转载 优雅的处理空值

目录业务中的空值场景问题现场深入listUser研究深入研究get方法深入入参小结空对象模式场景优化修改使用Optional可以进行优化Optioanl的正确使用Optional不要作为参数Optional作为返回值当个实体的返回集合实体的返回使用Optional变量getter中的使用小结业务中的空值场景...

2019-04-01 17:22:41 153

原创 Linux 带宽异常跑满分析解决

可能是恶意程序问题,或者是部分 IP 恶意访问导致,亦可能是服务遭到了CC攻击处理办法使用 iftop 工具排查 使用nethogs 进行排查首先需要确定是哪一张网卡的带宽跑满,可以通过sar -n DEV 15命令来获取网卡级别的流量图,命令中 1 5 表示每一秒钟取 1 次值,一共取 5 次。命令执行后会列出每个网卡这 5 次取值的平均数据,根据实际情况来确定带宽跑...

2019-03-29 17:06:53 2391

原创 Linux CPU 占用率较高问题排查

Linux 系统的 CPU 持续跑高,则会对系统稳定性和业务运行造成影响1.CPU 负载查看方法top得到进程pid5387,再查看cup最高的子进程PIDtop -H -p 5387找到cpu最高的进程,查看其线程tidps -mp 21117 -o THREAD,tid,time通过 printf "%x\n" 3926 打印出这个线程...

2019-03-29 17:04:17 1507

原创 Linux 服务器 tomcat 响应缓慢的问题排查

目录1.查看 cpu2.查看带宽3.查看内存4.查看tomcat1.查看tomcat运行进程号2.查看进程连接数3.查看tomcat下消耗性能最多的线程1.查看 cputopcup显示正常,排除如果有异常请查看:Linux CPU 占用率较高问题排查2.查看带宽1、服务器内部安装iftop 流量监控工具:yum insta...

2019-03-29 17:01:34 2286

原创 Linux 服务器运维 常用 命令

1 查看网络netstat -nptl2 查看进程号ps -aux | grep javaps -aux | grep tomcatps -aux | grep mysql#列出该进程号的启动位置ll/proc/15013.查看磁盘信息df -ah #磁盘分区占用情况df -h #详细显示出各子文件的大小情况du -sh #目录整体占用大小4.查看...

2019-03-29 16:24:33 339

原创 tomcat 异常 HTTP method names must be tokens

java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java...

2019-03-29 15:58:44 13517 3

转载 11 个简单的 Java 性能调优技巧

大多数开发人员理所当然地以为性能优化很复杂,需要大量的经验和知识。好吧,不能说这是完全错误的。优化应用程序以获得最佳性能不是一件容易的事情。但是,这并不意味着如果你不具备这些知识,就不能做任何事情。这里有11个易于遵循的建议和最佳实践可以帮助你创建一个性能良好的应用程序。大部分建议是针对Java的。但也有若干建议是与语言无关的,可以应用于所有应用程序和编程语言。在讨论专门针对Java的性能...

2019-03-28 12:03:24 93

转载 MySQL · 性能优化 · MySQL常见SQL错误用法

前言MySQL在2016年仍然保持强劲的数据库流行度增长趋势。越来越多的客户将自己的应用建立在MySQL数据库之上,甚至是从Oracle迁移到MySQL上来。但也存在部分客户在使用MySQL数据库的过程中遇到一些比如响应时间慢,CPU打满等情况。阿里云RDS专家服务团队帮助云上客户解决过很多紧急问题。现将《ApsaraDB专家诊断报告》中出现的部分常见SQL问题总结如下,供大家参考。常见S...

2019-03-28 11:47:23 92

转载 SQL——JOIN 的七种用法

下图展示了 LEFT JOIN、RIGHT JOIN、INNER JOIN、OUTER JOIN 相关的 7 种用法。具体分解如下:1.INNER JOIN(内连接)SELECT <select_list>FROM Table_A AINNER JOIN Table_B BON A.Key = B.Key2.LEFT JOIN(左连接)SEL...

2019-03-28 11:45:37 496

原创 static关键字有5种用法

说到static,静态变量和静态方法大家随口就来,因为他们在实际开发中应用很广泛,但他们真正在使用的时候会存在很多问题,而且它的使用不只那两种:静态变量。 静态方法。 静态代码块。 静态内部类。 静态导入。接下来我们看一下这些用法。1.静态变量静态变量属于类,内存中只有一个实例,当类被加载,就会为该静态变量分配内存空间,跟 class 本身在一起存放在方法区中永远不会被回收,...

2019-03-25 11:32:04 467

原创 Intellij IDEA 安装 lombok (本地安装/在线安装)及使用详解

一 本地安装lombok1.下载安装lombok zip包下载地址:https://github.com/mplushnikov/lombok-intellij-plugin/releases2.下载好后放在任意盘下3.进入 file->settings勾选4.进入 Plugins - >Install plugin from disk…选择下载的zi...

2019-03-25 11:25:23 7479 1

转载 冒泡排序的优化

算法思想:对相邻的元素进行两两比较,顺序相反则进行交换,这样,每一趟会将最小或最大的元素“浮”到顶端,最终达到完全有序。原始冒泡相邻元素比较,大数后沉小数前移def bubble_sort(items): """冒泡排序 - O(N**2) """ for i in range(1, len(items)): for j in range(0, len(items) - i):...

2019-03-19 12:09:13 117

原创 Java字符串反转

1. 使用 + (String连接) 操作符package net.javaguides.corejava.string; /** * * @author Ramesh Fadatare * */ public class ReverseWithStringConcat { public static void main(String[] args) { ReverseWith...

2019-03-19 12:07:05 102

原创 linux find文件查找命令find,locate与grep文件内容查找命令

Linux下查找文件的命令有三个;locate和find,grep一findfind在不指定查找目录的情况下是对整个系统进行遍历查找使用格式: find[指定查找目录][查找规则][查找完后执行的action]$ find [path] [option] [expression][指定查找目录]例如:这里要注意的是目录之间要用空格分开...

2019-03-19 12:03:13 1000

原创 Java 多线程面试题及答案

这篇文章主要是对多线程的问题进行总结的,因此罗列了40个多线程的问题。这些多线程的问题,有些来源于各大网站、有些来源于自己的思考。可能有些问题网上有、可能有些问题对应的答案也有、也可能有些各位网友也都看过,但是本文写作的重心就是所有的问题都会按照自己的理解回答一遍,不会去看网上的答案,因此可能有些问题讲的不对,能指正的希望大家不吝指教。 1、多线程有什么用?一个可能在很多人看来...

2018-10-30 11:58:23 409

转载 Java 11 正式发布,带来ZGC、Http Client等重要特性!

Java 11 已经正式发布,官网下载:https://www.oracle.com/technetwork/java/javase/downloads/index.html 我们知道,从 Java 9 开始,JDK 就采用了新的发布模型,每 6 个月发布一个新版本。每 3 年有一个长期支持版本(Long Term Support,LTS)。Java 8 就是一个 LTS 版本。而刚刚发布的 ...

2018-10-30 11:26:42 636

原创 JVM内存管理-垃圾回收与内存分配

 Java垃圾收集 哪些内存需要回收? 线程私有区的程序计数器、虚拟机栈和本地方法栈不需要,重点是共享数据区的堆和方法区部分的内存 什么时候回收?  判断对象是否存活的算法? 引用计数法 逻辑:给对象添加一个引用计数器,每当有一个地方引用它时,计数器值就加1,当引用失效时,计数器值就减1,任何时刻计数器为0的对象就是不可能再被使用的。 ...

2018-10-30 11:25:10 94

原创 40个Java集合面试问题和答案

1.Java集合框架是什么?说出一些集合框架的优点?每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久。它还包括在Java并发包中,阻塞接口以及它们的实现。集合框架的部分优点如下:...

2018-10-30 11:22:43 126

原创 springboot 框架项目持续更新 (五)——发送模板邮件

1.加入pom文件&lt;dependency&gt; &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt; &lt;artifactId&gt;spring-boot-starter-mail&lt;/artifactId&gt;&lt;/dependency&gt;&lt;dependency&gt;

2018-08-07 15:14:46 870 1

原创 Linux Java 服务器搭建-Nginx 添加 rtmp 模块安装及配置及遇到的问题(八)

第一步需要安装nginx具体过程参考https://blog.csdn.net/qq_39526250/article/details/80608850#查看nginx端口#ps -ef | grep nginx查看模块#/usr/local/nginx/sbin/nginx -V显示(可能有所不同,注意保存自己的):configure arguments:  --wi...

2018-08-03 16:51:58 506

原创 springboot 2.0 改动 相关代码

一.启动类package com.basewin.tms;import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplicatio...

2018-07-31 18:40:22 240

原创 SecureCRT远程连接虚拟机CentOS6.9 / 7

一.版本信息虚拟机版本:VMware Workstation_10.0.3Linux系统版本:CentOS_6.9/7(64位)二.当在VMware虚拟机中将CentOS安装成功后,会在win7系统中模拟出两个虚拟网卡:VMnet1和VMnet8,我们来查看一下,点击“控制面板---&gt;查看网络状态和任务---&gt;更改适配器设置”,出现如下界面:打开虚拟机,选择“虚拟机...

2018-07-29 16:46:09 489

原创 Linux Java 服务器搭建-安装centos6.9(一)

1.安装VMware狂点下一步就好(需要安装包的留下邮箱),另外附上vmware10破解码地址https://download.csdn.net/download/qq_39526250/105708492.安装centos6.9 密码:admin密码:admin123     Admin,admin123        ...

2018-07-29 16:25:47 244

原创 Java实现科大讯飞语音转文字

1.首先我们注册账号申请语音听写功能,并下载SDK,注意保存好自己的appid,代码中会用到将下载文件里的四个文件放在项目根目录下,以及tomcat的lib中,这两个则放入项目的lib中作为外部引用jar包2.具体代码请自行下载https://download.csdn.net/download/qq_39526250/105199243.结果图...

2018-07-05 15:06:03 13966

原创 springboot rabiitmq(三) fanout模式

1.FanoutController package com.bctc.servlet.rabbitmq.fanout;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.GetMapping;import org.s...

2018-06-30 10:52:18 247

原创 springboot rabiitmq(二) topic模式

1.TopicControllerpackage com.bctc.servlet.rabbitmq.topic;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.GetMapping;import org.springfra...

2018-06-30 10:39:54 257

原创 springboot rabiitmq(一) 简单示例

1.在application.properties中加入####rabbitmq######spring.rabbitmq.host=192.168.23.130spring.rabbitmq.port=5672spring.rabbitmq.username=adminspring.rabbitmq.password=adminspring.rabbitmq.publisher-con...

2018-06-30 10:29:45 570

仿 pigx 的 springcloud 项目 java代码

仿 pigx 的 springcloud 项目 java代码

2021-06-22

vue版本冲突 解决 替换包

运行vue项目时,启动报错 error in ./~/_element-ui@2.7.2@element-ui/packages/form/src/label-wrap.vue Syntax Erroe:Unexpected token (20:14) ;; 将此压缩包解压到node_moudel里面找到 element-ui,替换即可

2019-04-15

linux 安装 rabbitmq 安装包以及所需erlang环境安装

linux 安装 rabbitmq 安装包以及所需erlang环境安装,安装详情请查看 https://blog.csdn.net/qq_39526250/article/details/80864432

2018-10-18

java百度OCR文字识别名片信息补充

java代码实现调用第三方百度OCR文字识别接口获取图片名片信息提取出文字

2018-07-04

java百度OCR文字识别名片信息

java代码实现调用第三方百度OCR文字识别接口获取图片名片信息提取出文字

2018-07-04

java讯飞语音转文字

java代码实现使用讯飞语音第三方接口实现语音转文字功能

2018-07-04

java公众号绑定域名,微信消息接收和token验证

java实现公众号绑定域名,微信消息接收和token验证功能

2018-07-04

java支付宝支付退款

java代码实现支付宝支付退款,代码已经封装,解压即用

2018-07-04

java微信付款退款取消订单

java代码实现微信付款,退款,取消订单等操作,代码已经做了封装转,解压即用

2018-07-04

java实现操作微信小程序后台发送模板消息

java代码实现用户操作微信小程序端,后台发送模板消息

2018-07-04

java实现微信退款

java实现微信支付的退款,根据微信用户的openid和订单号进行退款

2018-07-04

java实现微信红包发放

java实现微信红包发放,根据微信用户的openid进行发放普通红包

2018-07-04

activemq linux版本安装包

activemq linux版本安装包 apache-activemq-5.15.4-bin.tar.gz

2018-06-30

VisualSVN+TortoiseSVN+myeclipesd端需要文件

VisualSVN+TortoiseSVN+myeclipesd端需要文件,包含64.32位安装包。

2018-06-26

Java代买实现文件上传下载

Java代码实现文件上传下载到服务器本地,包括自定义路径,文件名。

2018-06-11

java实现DES对称加密

JAVA代码实现DES对称加密,同时加密后的数据为字符串类型,方便数据传输。

2018-06-11

Java实现 sm 2 3 4 加密解密签名验签工具包

java代码实现sm2的加密解密签名验签,sm3加密,sm4加密

2018-06-11

ssl 公私钥加密解密签名验签

java 代码实现 获取keystore,cer文件中的私钥公钥,对数据进行加密解密验签签名

2018-06-11

sm 2 3 4 加密工具类-java

sm 加密所需要的所有工具都在里面,实现数据的加密解密(记得添加jar包bcprov-jdk16)

2018-06-07

java + keytool+openssl 实现批量生成客户端证书

使用Java实现根据ca购买到的根证书 批量生产客户端需要的.bks和.cer文件,从而实现双向认证

2018-06-07

空空如也

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

TA关注的人

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