自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Shell函数的7种用法介绍

1. 在shell文件内部定义函数并引用:   复制代码代码如下: [~/shell/function]# cat factorial.sh #!/bin/bashfunction factorial{factorial=1for (( i=1;i <= $1;i++ )...

2017-12-07 15:10:03 261 0

原创 【Shell脚本】逐行处理文本文件 && 空格变换行

参考: http://www.cnblogs.com/dwdxdy/archive/2012/07/25/2608816.html   经常会对文体文件进行逐行处理,在Shell里面如何获取每行数据,然后处理该行数据,最后读取下一行数据,循环处理.有多种解决方法如下: 1.通过read...

2017-12-06 11:08:04 373 0

原创 Kryo 使用指南

1、Kryo 的简介 Kryo 是一个快速序列化/反序列化工具,其使用了字节码生成机制(底层依赖了 ASM 库),因此具有比较好的运行速度。 Kryo 序列化出来的结果,是其自定义的、独有的一种格式,不再是 JSON 或者其他现有的通用格式;而且,其序列化出来的结果是二进制的(即 b...

2017-12-05 20:14:03 310 0

原创 spring session序列化问题排查

严重: Servlet.service() for servlet [spring] in context with path [/] threw exception org.springframework.data.redis.serializer.SerializationExcepti...

2017-12-01 19:07:23 532 0

原创 spring mvc统一异常处理(@ControllerAdvice + @ExceptionHandler)

spring 封装了非常强大的异常处理机制。本文选取@ControllerAdvice + @ExceptionHandler 这种零配置(全注解),作为异常处理解决方案!   @ControllerAdvice,是spring3.2提供的新注解,从名字上可以看出大体意思是控制器增强。让我...

2017-12-01 17:09:13 264 0

原创 [摘录] Maven中的DependencyManagement和Dependencies

这里介绍一个在父项目中的根结点中声明dependencyManagement和dependencies的区别 dependencyManagement Maven 使用dependencyManagement 元素来提供了一种管理依赖版本号的方式。通常会在一个组织或者项目的最顶层的父POM ...

2017-12-01 15:36:49 83 0

原创 springboot注解

@RestController和@RequestMapping注解 我们的Example类上使用的第一个注解是 @RestController 。这被称为一个构造型(stereotype)注解。它为阅读代码的人们提供建议。对于Spring,该类扮演了一个特殊角色。在本示例中,我们的类是一个we...

2017-12-01 09:44:50 98 0

原创 Spring 4 xml 注解配置谅解

《Spring in Action》4th Edition 学习笔记   Spring 注入 bean 可以有如下三种方式:   自动注入 显式注入(java 配置) 显式注入(xml 配置) 自动注入   自动注入主要使用如下的技术:   Component...

2017-12-01 09:39:10 112 0

原创 利用junit对springMVC的Controller进行测试

平时对junit测试service/DAO层已经很熟悉不过了,但是要测试controller层,不能总重启服务器吧,那么我们就用junit4模拟请求,测试controller层的方法。   代码示例: import static org.springframework.test.web....

2017-11-30 16:26:43 104 0

原创 git查看commit的内容

git查看commit的内容      在push之前有时候会不放心是不是忘记加某些文件,或者是不是多删了个什么东西,这时候希望能够看看上次commit都做了些什么。 一开始想到的是用gitdiff,但是gitdiff用于当前修改尚未commit的时候较为方便,一旦commit后,需要指定...

2017-11-29 14:55:44 221 0

原创 Git学习笔记(九) 历史穿梭

版本表示法:git rev-parse --git-dir显示Git版本库的位置   --show-cdup显示当前工作区目录的深度  --parseopt解析命令行参数 $ git rev-parse --symbolic --branches 显示分支 $ git rev-parse ...

2017-11-29 14:54:55 105 0

原创 gitLab 全局hooks和custom_hooks,以及服务器端自动更新和备份(一)

 写代码的时候,git push到远程代码库后,往往还要连到服务器上pull代码才能进行测试。代码push后自动更新测试服务器的代码也算是一种刚需了。 gitLab的钩子分为两大类:1.web hooks             2.custom hooks,这是调用git原生钩子,这里的...

2017-11-29 13:37:39 457 0

原创 Jenkins进阶-Gitlab使用Webhook实现Push代码自动部署(3)

1.Jenkins 安装完成以后,首先我们在Jenkins中需要安装一下,Gitlab Hook Plugin 插件; 2.插件安装完成我们创建任务,在任务重构建触发器下获取回调URL; 注意: 1 注意:     默认Jjenkins自带的变量不包含Jenk...

2017-11-29 11:32:58 278 0

原创 Java内存模型之重排序

在执行程序时,为了提供性能,处理器和编译器常常会对指令进行重排序,但是不能随意重排序,不是你想怎么排序就怎么排序,它需要满足以下两个条件: 在单线程环境下不能改变程序运行的结果; 存在数据依赖关系的不允许重排序 如果看过LZ上篇博客的就会知道,其实这两点可以归结于一点:无法通过happ...

2017-11-29 09:44:18 100 0

原创 PMD、FindBug、checkstyle、sonar这些代码检查工具的区别?各自的侧重点是什么?

可以说都是代码静态分析工具,但侧重点不同。pmd:基于源代码分析,主要面向安全编码规则,如“避免声明同名变量”,包括风格类、类型使用等等,具备一定的数据流分析和路径分析能力。checkstyle:基于源代码,与pmd类似,但更侧重编码的语法风格,分析深度不及pmd。findbugs:基于字节码分...

2017-11-28 10:01:45 1688 0

原创 jquery datatable layui 表格宽度

layui + jquery datatable 表格设置宽度   layui样式影响到了表格宽度,导致一直没生效,手动设置表格宽度         _tableObj = $('#dataTable');   _tableObj.width("2...

2017-11-23 22:20:33 373 0

原创 阿里巴巴Java代码规约插件p3c-pmd使用指南与实现解析

阿里巴巴Java代码规约插件安装 阿里Java代码规约插件有Eclipse插件和IDEA插件。 Eclipse插件安装 Eclipse版插件支持4.2(Juno,JDK1.8+)及以上版本,通过 Help -- Install New Software 然后输入https://p3c...

2017-11-23 17:09:49 138 0

原创 静态分析工具PMD使用说明 (文章来源: Java Eye)

质量是衡量一个软件是否成功的关键要素。而对于商业软件系统,尤其是企业应用软件系统来说,除了软件运行质量、文档质量以外,代码的质量也是非常重要的。软件开发进行到编码阶段的时候,最大的风险就在于如何保证代码的易读性和一致性,从而使得软件的维护的代价不会很高。 在软件开发的过程中,以下几种情形随处可...

2017-11-23 17:07:54 106 0

原创 技巧集:nginx作代理时,查看请求被转发到哪台服务器

使用Nginx代理多台服务器实行负载的时候,如何查看某一个请求被转发到哪台服务器上呢? upstream demo { server 127.0.0.1:8781; server 127.0.0.1:8087;} 加上如下红色配置: serve...

2017-11-23 10:05:00 372 0

原创 kafka运行过程中localhost.localdomain: 未知的名称或服务

kafka运行过程中出现了java.net.UnknownHostException: localhost.localdomain: localhost.localdomain: 未知的名称或服务 [2016-01-17 23:17:52,291] ERROR Unknown error wh...

2017-11-22 19:37:44 600 0

原创 spring cloud config实现datasource的热部署

关于spring cloud config的基本使用,前面的博客中已经说过了,如果不了解的话,请先看以前的博客 spring cloud config整合gitlab搭建分布式的配置中心 spring cloud config分布式配置中心的高可用 今天,我们的重点是如何实现数据源的热部署...

2017-11-21 16:44:39 84 0

原创 MyBatis 使用 MyCat 实现多租户的一种简单思路

本文的多租户是基于多数据库进行实现的,数据是通过不同数据库进行隔离。 MyCat 基本配置 首先针对多租户配置了多个数据库,在 MyCat 的 schema.xml 中配置了多个 schema。  在 server.xml 中配置了一个用户:  后面会使用 MyCat 注解(就是注释)...

2017-11-20 18:27:42 183 0

原创 Mycat1.6之注解&多租户

永久链接: http://gaojingsong.iteye.com/blog/2338725 预览文章: 【Mycat1.6之注解&多租户】    一、Mycat之分片--节点--主机 分片节点(dataNode) 数据切分后,一个大表被分到不同...

2017-11-20 18:21:43 30 0

原创 Spring+MyBatis实现数据库读写分离方案

百度关键词:spring mybatis 多数据源 读写分离     推荐第四种 方案1 通过MyBatis配置文件创建读写分离两个DataSource,每个SqlSessionFactoryBean对象的mapperLocations属性制定两个读写数据源的配置文件。将所有读的操作配...

2017-11-20 17:15:20 49 0

原创 SQLChop、SQLWall(Druid)、PHP Syntax Parser Analysis

SQLChop、SQLWall(Druid)、PHP Syntax Parser Analysis   阅读目录 catalog 1. introduction 2. sqlchop sourcecode analysis 3. SQLWall(Druid) 4. ...

2017-11-20 11:44:01 71 0

原创 数据库连接池druid wallfilter配置

使用缺省配置的WallFilter   <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init"...

2017-11-20 11:38:17 106 0

原创 RocketMQ存储篇——MapedFileQueue

MapedFileQueue 应用层访问commitlog和consumequeue文件是通过MappFileQueue来操作MapedFile类,从而间接操作磁盘上面的文件;MappFileQueue是由多个MapedFile队列组成的,该类的结果如下图所示。功能清单如下: 1. 获取在...

2017-11-16 18:28:06 39 0

原创 java restful 实体封装

package com.mogoroom.bs.common; public enum StatusConstant { /** * 请登录 code */ LOGIN_STATUS_ERROR("10503","Please...

2017-11-16 09:47:15 173 0

原创 Spring MVC-ContextLoaderListener和DispatcherServlet

Tomcat或Jetty作为Servlet容器会为每一个Web应用构建一个ServletContext用于存放所有的Servlet, Filter, Listener。Spring MVC 启动的时候主要涉及到DispatcherServlet 与 ContextLoaderListene...

2017-11-15 09:35:51 29 0

原创 spring http session 监听 创建 失效session

一.流程概述 主要是通过扩展ServletRequestWraper来实现的。 1.SessionRepositoryFilter.doFilterInternal 2.会创建SessionRepositoryRequestWrapper,这里面的getSession(boolean)会...

2017-11-15 09:35:08 204 0

原创 Java内存模型之从JMM角度分析DCL

DCL,即Double Check Lock,中卫双重检查锁定。其实DCL很多人在单例模式中用过,LZ面试人的时候也要他们写过,但是有很多人都会写错。他们为什么会写错呢?其错误根源在哪里?有什么解决方案?下面就随LZ一起来分析 问题分析 我们先看单例模式里面的懒汉式: publicclas...

2017-11-15 09:35:01 34 0

原创 spring的启动过程——spring和springMVC父子容器的原理

要想很好理解这三个上下文的关系,需要先熟悉spring是怎样在web容器中启动起来的。spring的启动过程其实就是其IoC容器的启动过程,对于web程序,IoC容器启动过程即是建立上下文的过程。 spring的启动过程: 首先,对于一个web应用,其部署在web容器中,...

2017-11-15 09:29:07 31 0

原创 grafana+influxdb+telegraf监控服务器cpu,内存和硬盘

监控服务器状态是运维必不可少的一部分, 通常情况, 我们用得比较多的就是graphite, 因为使用python写的, 所以对于大部分运维工程师来讲, 算是比较熟悉的语言. 但graphite毕竟比较老了, 界面体验方面不太友好, 加上graphite部署起来也不是太容易, 会给新手造成一...

2017-11-15 09:28:57 253 0

原创 spring session key 储存 官方说明

/** * <p> * A {@link org.springframework.session.SessionRepository} that is implemented using * Spring Data's {@link org.s...

2017-11-14 09:44:10 194 0

原创 万亿级数据洪峰下的分布式消息引擎

前言 通过简单回顾阿里中间件(Aliware)消息引擎的发展史,本文开篇于双11消息引擎面临的低延迟挑战,通过经典的应用场景阐述可能会面临的问题 - 响应慢,雪崩,用户体验差,继而交易下跌。为了应对这些不可控的洪峰数据,中间件团队通过大量研究和实践,推出了低延迟高可用解决方案,在分布式存储领...

2017-11-14 09:43:29 41 0

原创 spring session spring:session:sessions:expires 源码跟踪

/** * Saves any attributes that have been changed and updates the expiration of this * session. */ private void saveDelta() { i...

2017-11-14 09:37:21 169 0

原创 Java 打印堆栈的几种方法

java 中可以通过 eclipse 等工具直接打印堆栈,但是对于某些环境中无法使用 eclipse 工具时,需要知道堆栈,如何处理呢? 介绍3种方法供选择: 方法一: package name.xu; public class CallStack { public ...

2017-11-14 09:36:53 3502 0

原创 如何在Kafka上创建一个Topic

脚本手工创建 ./bin/kafka-topics.sh –zookeeper 192.168.2.225:2183/config/mobile/mq –create –topic test.example –replication-factor 2 –partitions 24 –topi...

2017-11-14 09:36:31 119 0

原创 Apache Hadoop与第三方Hadoop-CDH,HDP,MapR的分析与比较

一、Hadoop版本综述   目前Hadoop发行版非常多,有华为发行版、Intel发行版、Cloudera发行版(CDH)等,所有这些发行版均是基于Apache Hadoop衍生出来的,之所以有这么多的版本,完全是由Apache Hadoop的开源协议决定的:任何人可以对其进行修改,并作...

2017-11-13 09:39:12 227 1

原创 常见网关种类

kong  caddy openresty  nginx plus Traefik fabio  zuul spring Gateway

2017-11-13 09:37:37 674 0

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