自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

牧修的专栏

只有不断的总结才会有不断的提升

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

原创 使用VirtualBox搭建分布式集群环境记录

针对集群环境,工作中基本上都是直接申请真实的物理机,或者干脆让运维给一套多机。自己之前个人研究的时候也是使用之前从二手市场淘来的多台物理机组成的分布式集群,但是最近一不小心把其中两台搞坏了,加之确实比较占用房间空间,就直接当废铁卖了。目前就剩下了一台4C16G1T的主机。打算使用虚拟机来搭建分布式集群环境。构想搭建之前构想了一下环境要求:1、虚拟机环境能上网2、虚拟机多机之间能相互访问、网络通畅3、虚拟机能访问到宿主机4、宿主机能访问到虚拟机5、宿主机所在同网段局域网能访问虚拟机

2021-10-16 14:18:45 270

原创 现象看本质 | 由mybatis接口传递多参数引发的思考

背景最近一个小学弟问我,他使用mybatis进行多参数查询时,在本地明明可以正常测试通过的代码,到服务器了就不能正常执行了,后来别人告诉他要在mybatis的接口加上@Param,后来他问我为什么本地不加注解就可以过,服务器就不行,而且springmvc可以直接使用参数名进行映射,mybatis就必须要使用类似@Param这种方式对参数名进行声明,不用@Param修饰行不行?大概的场景如下:// SpringMVC Controller@RequestMapping("/getUsers")p

2021-08-08 19:48:51 187

原创 代码实践 | 异步线程数据传递问题

背景中间件在系统之间或者方法之间传递参数时,例如中间需要传递上下文的traceId,客户端请求的IP信息、当前登录用户的身份信息等等。我们又不能要求使用中间件的地方都给我们增加方法参数。因为这些参数都是业务无感的。那么这个时候就需要我们在业务无感知的情况进行参数传递。一般使用的是Threadlocal。ThreadLocalthreadlocal一般会经常出现在中间件的代码中,我认为其有两个目的保证线程之间变量的隔离性,可以通过ThreadLocal把一个变量多次复用。private s

2021-08-08 19:39:18 851

原创 代码实践 | 延迟双删实现

高并发场景,为了提高性能,解决数据库压力,一般数据会对数据进行缓存,减轻数据压力,但是如果使用缓存,会有一个缓存不一致的情况,一般缓存不一致的一种解决方案是延迟双删。通用延迟器public class DelayTrigger<T> { private static final int capacity = 10000; private static final long DELAY_TIME = 10 * 1000;// 10秒 private static

2021-08-08 19:30:12 2332

原创 经验总结 | 重构让你的代码更优美和简洁

前言最近有幸对订单Push项目进行了重构,向大家分享一下代码重构相关的工作经验,希望对大家有所启发。有时候,我们在做某个功能需求时,需要花掉大量的时间,才能找到和需求有关联的代码。或者我们在阅读别人写的代码、接手别人的项目时,总是“头皮发麻”,当你面对结构混乱、毫无章法的代码结构,词不达意的变量名、方法名时,我相信你根本没有读下去的心情。这不是你的问题,而是你手中的代码需要进行重构了。代码质量的唯一有效度量是:WTFs(what the fuck)/minute何为重构每个人对重

2021-08-08 19:19:51 359

原创 Linux下配置JDK

Linux下安装配置 JDK71. 下载JDK目前最新的jdk版本是:Java SE Development Kit 8u40,我这里下载的是jdk1.7下载地址:http://download.oracle.com/otn-pub/java/jdk/7u75-b13/jdk-7u75-linux-x64.tar.gz当前最新版本:http://www.oracle.com/technetwork/

2015-03-08 20:41:47 330

原创 常用的排序算法之直接插入排序java版

直接插入排序算法描述:每步将一个待排序元素,插入到前面已经排好序的一组元素的适当位置上,直到全部 元素插入为止。过程举例:初始元序列: 【8 】 3 2 5 9 3* 6第一趟排序: 【3 8】 2 5 9 3* 6第二趟排序: 【2 3 8】 5 9 3* 6第三趟排序: 【2 3 5 8】 9 3* 6第四趟排序: 【2 3

2014-10-08 09:35:25 364

原创 常用排序算法之直接选择排序java版

直接选择排序算法描述:首先找出最大的元素,将其与 a[n- 1]位置交换;然后在余下的 n- 1 个元素中寻找最大的元素,将其与 a[n- 2]位置交换,如此进行下去直至 n 个元素排序完毕。过程实例:初始元序列: 8 3 2 5 9 3* 6第一趟排序: 8 3 2 5 6 3* 【9 】第二趟排序: 3* 3 2 5 6 【 8

2014-10-06 14:10:31 393

原创 常用的排序算法之冒泡排序java版

然而冒泡排序的效果确是各种算法里较为糟糕的,特

2014-10-06 13:20:19 487

原创 java创建线程的三种方式

java线程创建的三种方式第一种:继承Thread过程大致如下:继承tread重写run方法使用对象.start()方法启动线程实例:/** * 线程的第一种方式: * 1.继承tread * 2.重写run方法 * 3.使用对象.start()方法启动线程 * * @author Administrato

2014-09-29 22:21:33 507 1

原创 二分法搜索技术

二分法搜索技术二分搜索算法是运用分治策略的典型例子给定已排好的序的n个元素a[0:n-1],现在要再在这个元素序列中找到特定的元素x.最好理解的当然是使用顺序法逐一比较,直到找到该元素x二分搜索思想:当数据量很大适宜采用该方法。采用二分法查找时,数据需是排好序的。主要思想是:(设查找的数组区间为array[low, high])确定该期间的中间位置K

2014-09-27 17:04:37 534

原创 java如何自定义annotation

JavaSE知识总结Java annotation入门annotation元数据的作用如果要对于元数据的作用进行分类,目前还没有明确的定义,不过我们可以根据它所起的作用,大致可分为三类:编写文档:通过代码里标识的元数据生成文档。代码分析:通过代码里标识的元数据对代码进行分析。编译检查:通过代码里标识的元数据让编译器能实现基本的编译检查最常见的an

2014-09-27 16:59:13 343

原创 java泛型类

javaSE知识总结java泛型泛型:是指在定义类或者接口的时候可以为类和接口指定类型形参,在定义变量、定义方法是该类型形参可以当做普通的类型来使用,并且该类型形参在定义变量和创建对象的确定。普通泛型:只有一个泛型类型的:class Point{ // 此处可以随便写标识符号,T是type的简称 private T var ; // var的

2014-09-20 15:13:10 294

原创 java集合类

Java知识总结3.java集合类CollectionCollection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些 Collection允许相同的元素而另一些不行。一些能排序而另一些不行。直接上集合类的类图更加直观:大家从图中可以直接明了的发现各子类集合之间的关系。现

2014-09-20 15:11:55 425 2

原创 java内存分析

JavaSE知识总结2.内存分析分析内存是深入理解编程的第一步,一下给大家介绍一下java中常见的内存分析,文章的主要脉络:数据类型数据类型在上一期也给大家介绍了一下,这一次主要介绍的是各个数据在内存中的存在状态和位置,数据类型的不同,内存分配的位置和大小也会有不同,局部变量:方法体内部声明的变量,包括形参都是局部变量方法体外成员变量:类

2014-09-20 15:09:21 333

原创 java基本特征(封装、继承、多态)

JavaSE知识总结1.面向对象之封装、继承、多态Java是一种面向对象设计的高级语言,支持继承、封装和多态三大基本特征,首先我们从面向对象两大概念:类和对象(也称为实例)谈起。来看看最基本的类定义语法:/*命名规则:*类名(首字母大写,多个单词组合时每个单词首字母大写,单词之间不加任何连接符号)*字段名、方法名(首字母小写,多个单词组合时第一个单词首字母小写,之后每个单词

2014-09-20 15:05:16 450

空空如也

空空如也

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

TA关注的人

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