- 博客(30)
- 资源 (2)
- 问答 (5)
- 收藏
- 关注
原创 rocketMQ:unable to calculate a request signature. error=Algorithm HmacSHA1 not available
rocketMQ使用 ./mqadmin topicList -n localhost:9876报错org.apache.rocketmq.tools.command.SubCommandException: TopicListSubCommand command failed at org.apache.rocketmq.tools.command.topic.TopicListSubCom...
2019-07-10 20:57:55 7024 2
原创 centos7.5安装Jenkins,自动化部署Spring Boot
安装jenkins1、官网下载Jenkins的war包,地址 https://jenkins.io/download/ 。2、下载tomcat,并将jenkins.war移动到tomcat的webapps目录下。3、启动tomcat。4、访问http://ip:8080/jenkins,从配置文件获取初始密码。/root/.jenkins/secrets/initialAdminPassw...
2019-01-17 14:21:44 1010
原创 centos7.5安装mysql5.7
卸载mariadbcentos7.5 不支持mysql,内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb。rpm -qa | grep mariadbrpm -e --nodeps mariadb-libs下载源wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-co...
2019-01-15 15:45:48 681 1
原创 centos7.5安装jdk、maven
安装jdk1、首先到oracle官网下载jdk,https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html下载好上传到服务器上。2、将下载的压缩包移到安装软件的常用文件夹中并解压。mv jdk-8u191-linux-x64.tar.gz /usr/local/tar -zxvf...
2019-01-10 09:44:23 878 5
原创 centos7.5安装git客户端
第一步:删除已有的git yum remove git第二步:安装编译git时需要的包yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-develyum install -y gcc perl-ExtUtils-MakeMaker 第三步:Git官网下载Git最新版tar包,wget http...
2019-01-08 10:45:49 1956
原创 斐波那契数列
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=1,F(1)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)...
2018-05-20 14:55:12 881
原创 java实现寻找有向图的的闭环
最近在公司与遇到一个需求,将所有服务关系的依赖中找出闭环依赖,大概意思就是把有向图的闭环路径找出来,我用深度优先搜索(DFS)进行实现,现将代码贡献出来供大家参考:public class DsfCycle { /** * 限制node最大数 */ private static int MAX_NODE_COUNT = 100; /** ...
2018-05-17 11:46:00 5311 1
原创 NIO之Channel详解
NIO介绍 在讲解Channel之前,首先了解一下NIO, Java NIO全称java non-blocking IO,是从Java 1.4版本开始引入的一个新的IO API(New IO),可以替代标准的Java IO API,NIO与原来的IO有同样的作用和目的,但是使用的方式完全不同。IO与 NIO区别: IO NIO 面向流(Stream Orienten...
2018-02-24 13:57:59 6569
原创 java堆、栈、常量池
java堆、栈突然在网上看到一篇关于java堆栈共享问题帖子,所以回忆一下java堆栈。首先看看那个帖子 首先做一下解答,堆是所有线程共享的内存区域,栈是每个线程独享的,所以那篇博文肯定是错误的。 其次呢博文的这句话也是错误的 编译器先处理int a = 3;首先它会在栈中创建一个变量为a的引用java基本数据类型存放在哪?它存放在堆或栈中,具体情况由上下文决定。当这个变
2018-01-30 15:53:32 975
原创 创建Thread对象时this.getName()和Thread.currentThread().getName()的差异
非构造参数创建Thread对象首先看下面一段代码:class NewThread extends Thread{ public NewThread() { // TODO Auto-generated constructor stub System.out.println("------NewThread stard-------");
2018-01-15 20:03:06 1126
原创 Java8新特性Optional、接口中的默认方法与静态方法
OptionalOptional 类(java.util.Optional) 是一个容器类,代表一个值存在或不存在,原来用 null 表示一个值不存在,现在 Optional 可以更好的表达这个概念。并且可以避免空指针异常。 常用方法: Optional.of(T t) : 创建一个 Optional 实例。 Optional.empty...
2017-12-04 14:28:34 1026
原创 Java8新特性Stream流
什么是Stream流?Stream流是数据渠道,用于操作数据源(集合、数组等)所生成的元素序列。 Stream的优点:声明性,可复合,可并行。这三个特性使得stream操作更简洁,更灵活,更高效。 Stream的操作有两个特点:可以多个操作链接起来运行,内部迭代。 Stream可分为并行流与串行流,Stream API 可以声明性地通过 parallel() 与sequential() 在并行流与顺序流之间
2017-10-23 22:02:15 2332 1
原创 Java8新特性方法引用、构造器引用、数组引用
引用方法引用方法引用是使用“::”将方法名和对象或类分隔,若lambda体中的内容有方法已经实现,我们可以使用“方法引用”,主要分为三种情况。对象::实例方法名注意:lambda体中调用方法的参数列表与返回值类型,要与函数式接口中抽象方法的参数列表和返回类型保持一致。public void test1(){
2017-09-14 17:20:56 460
原创 spring整合rabbitmq
关于spring整合rabbitmq看了网上很多资料感觉描述的不够详细,正好最近自己使用到了这项技术,总结一下的详细过程,分享给大家。准备工作1、首先有一个springMVC的demo,这里就不再介绍,自己提前准备。注意的事情为spring版本不能过低,否则会报错,我就陷入这个坑中了。spring采用4.2.3.RELEASE版本. 2、安装rabbitmq服务,以前博客中详细教程:ht
2017-08-11 17:45:17 2969 6
原创 解决报错:org/springframework/util/backoff/BackOff
因为在项目要使用队列,昨天整合spring和rabbitmq,当在配置消费者时,就是下面一段代码。<rabbit:listener-container connection-factory="connectionFactory" acknowledge="auto"> <rabbit:listener queues="queue_one" ref="queueList
2017-08-09 10:58:31 3037 3
原创 Java8新特性Lambda表达式、函数式接口
什么是Lambda表达式,java8为什么使用Lambda表达式?“Lambda 表达式”(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。我们可以把 Lambda表达式理解为是 一段可以传递的代码。最直观的是使用Lambda表达式之后不用
2017-08-02 11:17:59 3126 2
原创 centos7、unbutu14安装rabbitmq
最近公司用到了rabbitmq,RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。自己整理了一下安装过程,下面附上详细安装步骤。准备工作本文是在centos
2017-07-17 17:45:36 1155
转载 Ubuntu安装OpenGTS-GPS追踪系统
OpenGTS(Open sourced GPS Tracking System)是一套免费开源的的GPS追踪系统软件,基于Apache + Tomcat + MySQL环境。它提供一个基础框架用于创建属于你的基于Web的GPS跟踪系统,支持Google Maps等地图提供商,并能够通过插件增加对各种GPS跟踪设备的支持。OpenGTS的典型使用:出租车/租车公司可用来追踪车辆位置。
2017-07-07 16:26:17 3625
原创 Linux文件类型、属性
文件类型Linux中万物皆文件,即可以将Linux中任何东西都是文件,配置文件几乎都是纯文本文件(ASCII,内容可以直接读取);可执行文件都是二进制(binary)文件,如命令文件等;还有一种是具有特定格式的文件,数据格式文件(data)。通过file [文件名] 可查看这个文件的类型信息,下面是Linux中的一些文件类型。
2017-04-26 15:35:05 551
原创 Linux的目录结构
Linux目录特点1. Linux逻辑上所有的目录只有一个顶点/(根),即所有目录的起点。2. Linux所有目录结构是一个有层次的倒挂的一棵树。3. 目录结构和分区设备是没关系的,也就是不同的目录可以跨越不同的磁盘设备或分区。、4. 所有的目录都是按照一定的类别有规律的组织和命名的。Linux一级目录概述
2017-04-25 11:13:47 863
原创 Linux更改ssh服务远程登录配置
为什么要更改ssh服务远程登录配置?因为黑客都知道Linux远程连接默认端口为22,管理员用户默认为root,采取默认配置会增大我们系统被黑客入侵成功的概率。 ssh服务端的配置文件是 /ect/ssh/ 路径下的 sshd_config 文件。[root@lill ~]# ll /etc/ssh/总用量 160-rw-------. 1 root root 125811 11月 23
2017-04-20 10:56:46 7640 1
原创 Linux查看、修改SELinux的状态
SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。但是我们一般都不用它,因为它管的东西太多了,想做安全可以用防火墙等其他措施。 我们可以通过查看配置文件的命令 cat /etc/selinux/config 来查看状态,[root@lill ~]# cat /etc/selinux/conf
2017-04-18 19:54:39 38042
原创 JVM之类装载器
class装载验证流程加载装载类的第一个阶段,取得类的二进制字节流,并转换为方法区的数据结构,在Java堆中生成对应的java.lang.Class对象。链接验证文件格式的验证,是否以0xCAFEBABE开头,版本号是否合理等。元数据验证,是否继承父类,是否有继承final类等。字节码验证(复杂),运行检查,栈数据类型和操作码数据参数吻合,跳转指令指定到合理的
2017-04-11 12:00:36 933 1
原创 JVM之GC详解
GC的概念Grabage Collection:在系统运行过程中占据空间的无用对象在一定时间范围内被及时清理来保证整个系统有足够的内存空间来运行。java中GC的对象是堆和永久区。常用的GC算法引用计数法概念:对于一个对象A,只要有任何一个对象引用了A,则A的引用计数器就加1,当引用失效时,引用计数器就减1。只要对象A的引用计数器的值为0,则对象A就不可能再被使用。 出现
2017-04-05 20:18:08 2261
原创 JVM常用配置参数
Trace跟踪参数verbose:gc -XX:+printGC 可以打印GC的简要信息 -XX:+PrintGCDetails 打印GC详细信息 -XX:+PrintGCTimeStamps 打印CG发生的时间戳 -Xloggc:log/gc.log 指定GC的log的位置,以文件输出 -XX:+TraceClassLoading 监控类的加载 -XX:+PrintClass
2017-04-05 16:09:39 841
原创 Sping配置定时任务
最近使用了Spring注解方式来配置定时任务,感觉十分简单,只需要在spring的配置文件中加这样一段代码:<!-- task任务扫描注解 --> <task:annotation-driven/> <context:annotation-config/> <bean class="org.springframework.beans.factory.annotation.
2017-04-01 16:47:25 819
转载 Java 代码性能优化总结
1、尽量指定类、方法的final修饰符带有final修饰符的类是不可派生的。在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。如果指定了一个类为final,则该类所有的方法都是final的。Java编译器会寻找机会内联所有的final方法,内联对于
2017-03-15 16:37:58 664
原创 Linux常用命令总结
Linux常用命令 创建目录 mkdir-p 递归创建目录查看当前目录 pwd切换目录 cd~ 进入家目录 .. 返回上级目录 - 返回上次目录 -. 当前目录查看目录内容 ls-a 显示所有文件 -l 显示详细信息 -d 显示目录属性 -i 显示indoe -h 人性化显示文件大小 ...
2017-02-08 15:43:44 528
关于ByteBuffer的position和limit的问题
2018-02-06
字符流BufferedReader,BufferedWriter的缓冲区问题
2017-03-22
Atomikos实现分布式事务管理如何提高性能
2016-12-27
eclispe使用git问题,求大神指导
2016-10-20
TA创建的收藏夹 TA关注的收藏夹
TA关注的人