自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

归心亭

以梦为马,不负韶华~

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

转载 TPS及计算方法

TPS (transaction per second )代表每秒执行的事务数量,可基于测试周期内完成的事务数量计算得出。 例如,用户每分钟执行 6个事务,TPS为6 / 60s = 0.10 TPS 。同时我们会知道事务的响应时间(或节拍),以此例,60秒完成6个事务也同时代表每个事务的响应时间或节拍为10秒。   利特尔法则 ...

2021-02-07 21:38:38 1344

转载 Sonar建议Reorder the modifiers to comply with the Java Language Specification

Sonar提示Reorder the modifiers to comply with the Java Language Specification是建议我们重新排序修饰符以符合Java语言规范反例:private final static String DD = "测试";改成:private static final String DD = "测试";以下是修饰符的顺序:Annotationspublicprotectedprivateabstractstaticfinalt

2020-07-14 11:24:14 1965

转载 Error: Could not find or load main class org.apache.zookeeper.server.quorum.QuorumPeerMain

在将zookeeper安装的时候,报Error: Could not find or load main classorg.apache.zookeeper.server.quorum.QuorumPeerMain。看到这个的时候去查了一下百度一直没有看到正确的解决方案,所以去了zookeeper官网去查,查document,在它的standalone Operation中看到:The server is contained in a single JAR,这个服务是包含jar包的。但是我下载的zoo

2020-07-06 23:26:14 5424 2

原创 Thread启动线程的start方法能执行多次吗?

线程的创建我们知道在Java里线程是通过java.lang.Thread类来实现的。一般我们创建无返回值的线程会用下面两个方法:继承Thread类,重写run()方法;实现Runnable接口,重写run()方法;线程启动会通过调用start方法来启动线程而不能直接调用run方法。这里就会引出两个经典的面试题:为什么线程启动是调用start方法来启动线程而不能直接调用run方法?如果多次调用start方法会发生什么?其实答案就是源码里,在这之前我们要了解线程的状态有哪些。线程的

2020-06-27 17:17:51 3915 4

原创 如何确定前缀索引的长度?

为什么需要前缀索引问题我们在对一张表里的某个字段或者多个字段建立索引的时候,是否遇到过这个问题。Specified key ‘uniq_code’ was too long; max key length is 767 bytes.表结构如下:create table `t_account`( `id` BIGINT(20) UNSIGNED NOT NULL auto_increment COMMENT '自增ID', `date` varchar(50) NOT NULL DEFA

2020-06-27 17:13:12 2294

原创 一文带你学会Java8的时间API!

前言Java8之前日期/时间API存在的问题非线程安全 − java.util.Date 是非线程安全的,所有的日期类都是可变的,这是Java日期类最大的问题之一。设计很差 − Java的日期/时间类的定义并不一致,在java.util和java.sql的包中都有日期类,此外用于格式化和解析的类在java.text包中定义。java.util.Date同时包含日期和时间,而java.sql.Date仅包含日期,将其纳入java.sql包并不合理。另外这两个类都有相同的名字,这本身就是一个非常糟糕的设

2020-05-27 20:00:05 355

原创 java.lang.ClassCastException你是怎么处理的?

事件起因在做一个类型转换时遇到了下面的异常:是说不能把 Integer 类型强制转换成 String 类型。我的测试代码大概是这个样子:public static void testClassCastException() { Integer i1 = Integer.valueOf(getT()); // ① 抛异常 Integer i2 = (Integer) getT(); // ② 正常 Integer i3 = Integer.valueOf(getT().toString(

2020-05-27 19:58:53 6739

转载 Mac锁屏的几种方式

之前一直用的Windows系统,对系统操作快捷键都非常熟悉,像锁屏就是Win+L。现在用公司配的MacBookPro,很多常见操作都不知道快捷键,就一直设置的触发角的锁屏方式。今天来总结记录下锁屏的几种方式:电脑为MacBook Pro,OS为MacOS Sierra 10.15.3ctrl + shift + 右上角开关机键option + command + 右上角开关机键触发角设置系统偏好设置 → 桌面与屏幕保护程序 → 触发角, 然后设置鼠标移动到屏幕的四个角的某一个或几个角

2020-05-20 18:23:42 3863

转载 如何优雅的消除代码里的NullPointerException!

NPE(NullPointerException)是我们代码工作中最常遇到的一个异常,非常的难受,如何优雅的处理它呢。本篇文章将详细介绍Optional类,以及如何用它消除代码中的null检查。Optional是为了防止NullPointerException,使代码更优雅。避免使用null检查作为Java开发人员,几乎所有人都遇到过NullPointerException异常,大多数人遇到NullPointerException异常时都会在异常出现的地方加上if代码块来判断值不为空,比如下面的代码.

2020-05-09 00:30:07 581

原创 Java8新特性(三) 之 Stream API

Stream API本文继续介绍Java 8的另一个新特性——Stream API。Stream API是对Java中集合操作的增强,可以利用它进行各种过滤、排序、分组、聚合等操作。Stream API配合Lambda表达式可以加大的提高代码可读性和编码效率,Stream API也支持并行操作,我们不用再花费很多精力来编写容易出错的多线程代码了,Stream API已经替我们做好了,并且充分利...

2020-05-08 00:14:15 537

原创 Java8新特性(二) 之 函数式接口

函数式接口如果你的好奇心使你翻看Runnable接口源代码,你会发现该接口被一个@FunctionalInterface的注解修饰,这是Java 8中添加的新注解,用于表示 函数式接口。函数式接口又是什么鬼?在Java 8中,把那些仅有一个抽象方法的接口称为函数式接口。如果一个接口被@FunctionalInterface注解标注,表示这个接口被设计成函数式接口,只能有一个抽象方法,如果...

2020-05-07 23:51:14 1109

原创 Java8新特性(一) 之 Lambda表达式

Lambda表达式是什么Lambda表达式(lambda expression)是一个匿名函数,由数学中的λ演算而得名。在Java 8中可以把Lambda表达式理解为匿名函数,它没有名称,但是有参数列表、函数主体、返回类型等。Lambda表达式的语法如下:(parameters) -> { statements; }为什么要使用Lambda表达式?前面你也看到了,在Java中使用...

2020-05-07 23:50:07 186

原创 《Java开发手册》泰山版来袭!

会当凌绝顶,一览众山小终于迎来了《Java开发手册》的一个新的版本——泰山版。新版本说明此次泰山版发布,将带来三大亮点:新增5条日期时间规约;新增2条表别名sql规约;新增统一错误码规约。5条日期时间规约【强制】日期格式化时,传入pattern中表示年份统一使用小写的y。说明:日期格式化时,yyyy表示当天所在的年,而大写的YYYY代表是week in which year(J...

2020-05-04 17:35:26 2095

转载 2018最新csdn修改博客皮肤模板教程

原文链接:https://blog.csdn.net/qq_37142340/article/details/80696318 新版博客不能设置皮肤(点击查看旧版皮肤下线公告),默认皮肤实在不习惯,自己研究了下,发现修改前端代码可以替换,现在分享给大家博客设置 f12打开调试器,用元素选择器选择皮肤,找到下面的代码可以看到每一个皮肤为一个div元素,他们的 class属性名都为opt-skin-b...

2018-06-20 21:28:45 1015

原创 在windows环境下启动zkServer.cmd失败解决方法

      最近在搭建zookeeper时,想着就在Windows环境也可以,本以为很顺畅,没想到在启动时就遇到了一些问题。下载首先下载去官网下载就不用说了,会有一些教新的测试版本,想感受使用的也可以选择该版本。我这里选择的是稳定版3.4.11配置然后在解压后将zookeeper-3.4.11\conf\zoo_sample.cfg的模板配置文件拷贝一份名为 zoo.cfg的配置文件,修改里面的d...

2018-03-17 11:01:05 6808 1

转载 软件版本 —— Alpha、Beta、RC版本的区别

一直以来,就软件版本的几个阶段不太清楚,以至于我在下载使用一些软件过程中, 看到了很多除了正式版本外的教新版本带有后缀,不敢轻易使用,来查阅了资料总结下。软件版本周期α、β、λ 常用来表示软件测试过程中的三个阶段。-- α 是第一阶段,一般只供内部测试使用;-- β是第二个阶段,已经消除了软件中大部分的不完善之处,但仍有可能还存在缺陷和漏洞,一般只提供给特定的用

2018-03-17 10:01:39 727

转载 五分钟理解一致性哈希算法(consistent hashing)

转自:http://blog.csdn.net/cywosp/article/details/23397179/一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简 单哈希算法带来的问题,使得分布式哈希(DHT)可以在P2P环境中真正得到应用。 

2017-08-28 20:16:14 341

转载 CPU-bound(计算密集型) 和I/O bound(I/O密集型)

I/O密集型 (CPU-bound)I/O bound 指的是系统的CPU效能相对硬盘/内存的效能要好很多,此时,系统运作,大部分的状况是 CPU 在等 I/O (硬盘/内存) 的读/写,此时 CPU Loading 不高。 CPU bound 指的是系统的 硬盘/内存 效能 相对 CPU 的效能 要好很多,此时,系统运作,大部分的状况是 CPU Loading 100%,CPU 要读/写 I/O

2017-08-04 14:37:44 356

原创 利用Hexo + GitHub搭建免费的个人博客

利用Hexo + GitHub搭建免费的个人博客今天给大家带来一份用Hexo + Github 搭建属于自己的个人博客的教程。其实现在这种博客的搭建方式有很多种。最早我见的是Jekyll、接下来这个Hexo,最近在研究Python发现用Flask和Django都可以搭建的,只是路数不同罢了。我选择了这个Hexo,目前这个用的人也比较多,应该说是简单易搭建吧,可扩展也可自己美化。话不多说,下面就开始

2017-07-04 11:30:09 681

转载 Mybatis传多个参数(三种解决方案)

第一种方案 DAO层的函数方法 [java] view plain copy Public User selectUser(String name,String area);      对应的Mapper.xml[html] view plain copy select id="selectUser" 

2017-05-23 09:26:03 410

原创 TCP连接端口的状态

我们知道面试中,最常问到的关于网络的TCP/IP协议方面的应该就是1.TCP的3次握手和4次分手的过程?2.TCP和UDP的区别?等等。而这里我要总结一下TCP在连接过程中的端口的状态的问题。在Linux下,可以用netstat  -ntal 查看tcp 的端口,如果要查看具体的某一个端口号,可以grep  xxx 过滤出相应的哪一个端口,查看其状态。1.LISTE

2015-08-06 19:33:53 1422

原创 Linux 下 安装Mysql

最近想安装个MySQL用用,结果频频出错,最后查阅了很多资料,才安装成功,所以整理了一份关于MySQL的安装的文档,下面分享给大家,部分来自于网络。MySQL 的源码安装:一.系统环境操作系统:CentOS7.1 x86_64Mysql 版本:mysql-5.5.44二.安装 cmake 以及 mysql(mysql5.5 以后是通过cmak

2015-08-06 19:14:19 703

原创 fork与vfork的区别

fork()与vfock()都是创建一个进程,那他们有什么区别呢?总结有以下三点区别: #include #include #include int main() { pid_t pid; pid = fork(); if(pid<0) printf("error in fork!\n"); el

2015-07-16 11:07:57 570

原创 PS1~PS4,终端提示符设置,终端配置

终端可以说是在Linux的使用中最常用到的工具了,通过设置PS1,PS2,PS3,PS4这四个环境变量,我们就可以个性化定制终端的提示符。一、PS1—默认的交互提示符默认情况下PS1为”\s-\v$”,显示为 -bash-3.2$通过改变PS1,就可以在提示符显示一些对我们有用的信息,如用户名、工作目录、系统时间等 bash-3.2$export PS1=”\u@\h \w $”

2015-07-14 00:12:38 935

原创 Makefile 学习笔记

make是一个解释makefile中指令的命令工具。Make工具最主要也是最基本的功能就是通过makefile文件来描述源程序之间的相互关系并自动维护编译工作。而makefile 文件需要按照某种语法进行编写,文件中需要说明如何编译各个源文件并连接生成可执行文件,并要求定义源文件之间的依赖关系。 Makefile 里主要包含了五种类型的语句/行:显式规则、隐式规则、变量定义、文件

2015-07-13 23:37:31 473

转载 Linux运行级别

Linux运行级别Linux系统有7个运行级别(runlevel)运行级别的原理:在目录/etc/rc.d/init.d下有许多服务器脚本程序,一般称为服务(service)在/etc/rc.d下有7个名为rcN.d的目录,对应系统的7个运行级别rcN.d目录下都是一些符号链接文件,这些链接文件都指向init.d目录下的service脚本文件,命名规则为K+nn+服务名或S+nn+服务名,其中

2015-05-25 17:00:10 461

转载 进程中的“段”

bss 段: BSS 段( bsssegment)通常是指用来存放程序中未初始化的全局变量的 一块内存区域。 BSS 是英文 BlockStarted by Symbol 的简称。 BSS 段属 于静态内存分配。data 段: 数据段( datasegment)通常是指用来存放程序中已初始化的全局变量 的一块内存区域。数据段属于静态内存分配。text 段: 代码段( codes

2015-05-05 00:48:20 489

原创 MySQL学习笔记一

在Linux 下[root@localhost ~]# yum list | grep mysql #先查找出 mysql的软件包;真正的服务端是 mysql - server 所以安装时把mysql 和 mysql -server 还有开发的库文件mysql -devel也装上 [root@localhost ~]# yum in

2015-04-09 23:06:30 472

转载 Linux各位服务配置文件的相应目录位置

启动引导程序配置文件LILO /etc/lilo.conf GRUB /boot/grub/menu.lst 系统启动文件核脚本主启动控制文件 /etc/inittab SysV启动脚本的位置 /etc/init.d、/etc/rc.d/init.d或/etc/rc.d SysV启动脚本链接的位置 /etc/init.d/rc.d、/etc/rc.d/rc.d或/etc/rc.d 本地启动

2015-04-01 15:26:58 1422

转载 静态存储区、堆和栈的区别

一、内存基本构成可编程内存在基本上分为这样的几大部分:静态存储区、堆区和栈区。他们的功能不同,对他们使用方式也就不同。 静态存储区:内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。它主要存放静态数据、全局数据和常量。 栈区:在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的

2015-03-31 16:09:14 786

转载 C语言的指针

指向指针的指针如果一个指针变量存放的又是另一个指针变量的地址,则称这个指针变量为指向指针的指针变量。在前面已经介绍过,通过指针访问变量称为间接访问。由于指针变量直接指向变量,所以称为“单级间址”。而如果通过指向指针的指针变量来访问变量则构成“二级间址”。从下图可以看到,name是一个指针数组,它的每一个元素是一个指针型数据,其值为地址。Name是一个数据,它的每一个元素都有相应的地址。数组名name

2015-03-30 22:01:46 488

转载 C语言指针数组和指向指针的指针

请先看下面的代码:#include <stdio.h>#include <stdlib.h>int main(){ char *lines[5] = { "COSC1283/1284", "Programming", "Techniques", "is", "great fun" }; char

2015-03-30 17:23:22 773

转载 C++初步

【例1.1】本教程第一个C++程序,输出一行字符: “This is a C++ program.”。程序如下:#include <iostream> //包含头文件iostreamusing namespace std; //使用命名空间stdint main( ){ cout<<"This is a C++ program."; return 0;}在运行时会在屏

2015-03-20 23:00:25 652

转载 Linux<文件管理----硬链接和软链接>

Linux 文件系统最重要的特点之一是它的文件链接。链接是对文件的引用,这样你可以让文件在文件系统中多处被看到。我一般用的是RHEL 7.0 所以实验也是在此版本上使用。在 Linux 中,链接可以如同原始文件一样来对待。链接可以与普通的文件一样被执行、编辑和访问。对系统中的其它应用程序而言,链接就是它所对应的原始文件。当你通过链接对文件进行编辑时,你编辑的实际上就是原始文件。

2015-03-19 22:15:57 1685

原创 数据结构与算法(C语言)<算法>

二、  算法1. 算法 是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。2. 算法的特性:   1>. 输入输出:算法具有零个或多个输入,至少需要一个或多个输出。   2>. 有穷性:指算法在执行有限的步骤之后,自动结束而不会出现无限循环,并且每一个步骤在可接受的时间内完成。   3>. 确定性:算法的每一个步骤都具有确定的含义,不

2015-03-17 22:44:41 815

原创 数据结构与算法(C语言)<绪论>

一、 绪论 程序设计 = 数据结构 + 算法1.  数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关的学科。     数据结构: 是相互之间存在一种或多种特定关系的数据元素的集合。2. 数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。3. 数据元素:是组成数据的、有一定意义的基本单位,在

2015-03-17 20:21:39 719

原创 Linux 下C语言编程

Linux 下C语言编程1.编程的概念和理解1.1程序编译的过程   在这一操作中,程序完成了复杂的过程。一个程序的编译,需要完成词法分析、语法分析、中间代码生成、代码优化、目标代码生成。l 词法分析:指的是对由字符组成的单词进行处理,从左至右逐个字符地对源程序进行扫描,产生一个个单词符号。然后把字符串的源程序改造成为单词符号串的中间程序。在编译程序时,这一过程是自动完成的。编译程序会对代码的每一

2015-03-17 10:22:33 991

原创 Shell 编程入门

shell简介 shell处于kernel的外层,用来负责接收使用者输入的命令,然后将命令解释成kernel能了解的方式,然后由kernel去执行,再将结果传回默认的输出周边。shell是一种命令解释器,同时也是一个程序语言。shell有很多种,在众多的Linux发行版中,标准的shell是bash,也是我们学习的主要对象。 第一个程序范例:hello.sh

2015-03-09 17:15:15 635

空空如也

空空如也

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

TA关注的人

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