随笔分类 - Java
摘要:对象与引用 new一个对象 最简单的例子开始: 简单地讲,new Object()就是创建了一个Object类型的实例(instance),分配在了JVM的堆内存中 以public方法作为示例,来看一下: PS: 无论是public方法,还是private/protected/package方法,抑
阅读全文
摘要:ELK MAC环境搭建 本文旨在记录elasticsearch、logstash、kibana在mac下的安装与启动。 写在前面 ELK的官方文档对与它们的使用方法已经讲的非常清楚了,这里只对相关的安装步骤以及可能碰到的一些坑进行一些记录。 先决条件 java8 mac软件管理工具brew brew
阅读全文
摘要:并发入库面临重复数据的问题 以User类为例,当添加一个用户时,首先会去判断用户是否已经存在(即username是否已经在数据库中了),如果没有,则insert一条用户数据,如果有,则提示用户名已存在。 将这个操作看作函数:UserService.saveUser(User user),有3个步骤:
阅读全文
摘要:通过IDevice.getProperty(String name)得到响应的设备属性。在实际的使用过程中发现,我的manufacturer总是获取不到,为null(获取代码如下),而剩下的属性都可以获取到,经过测试,如果将manufacturer放在下面,第一个属性总是获取不到,于是到方法定义处查
阅读全文
摘要:我们通常使用Collections.sort()方法来对一个简单的数据列表排序。但是当ArrayList是由自定义对象组成的,就需要使用comparable或者comparator接口了。在使用这两者进行排序之前,先尝试不实现任何接口来进行排序。 考虑下面的例子——有一个Student类,具有三个属
阅读全文
摘要:这篇文章是对Spring Security的Authentication模块进行一个初步的概念了解,知道它是如何进行用户认证的 考虑一个大家比较熟悉的标准认证过程: 1.用户使用username和password登录 2.系统验证这个password对于该username是正确的 3.假设第二步验证
阅读全文
摘要:Routing 之前的章节里我们构建了一个简单的日志系统。我们可以广播所有的日志消息给所有的接收端。 本节我们将给它添加一个新特性 - 我们将允许只订阅一个消息的子集。例如,我们只将关键的错误消息定位到文件中(以节省磁盘空间),同时仍然可以在控制台输出所有日志消息。 Bindings 在前面的例子中
阅读全文
摘要:Publish/Subscribe 在上一节我们创建了一个work queue。背后的设想为每个任务被分发给明确的消费者。这节内容我们将做一些完全不同的事情 -- 我们将发送一条消息给多个消费者。这种模式被称为“发布/订阅”。 为了描述这种模式,我们来构建一个简单的日志系统。它包含两个程序 -- 第
阅读全文
摘要:消息分发 在【RabbitMQ】 HelloWorld中我们写了发送/接收消息的程序。这次我们将创建一个Work Queue用来在多个消费者之间分配耗时任务。 Work Queues(又称为:Task Queues)的主要思想是:尽可能的减少执行资源密集型任务时的等待时间。我们将任务封装为消息并发送
阅读全文
摘要:初识RabbitMQ RabbitMQ是一个消息代理人。它的主要目的很简单:接受并推送消息。我们可以将它理解为一个邮局:当你邮寄一封邮件到邮箱里,可以非常确定邮递员会将它送到收件人手中。打这种比方来将RabbitMQ看做一个邮局,邮箱,邮递员。 RabbitMQ和邮局的主要区别在于它不需要纸,它所接
阅读全文
摘要:Java将文件转为字节数组 关键字:文件,文件流,字节流,字节数组,二进制 摘要:最近工作中碰到的需求是,利用http传输二进制数据到服务器对应接口,需要传输userId, file(加密后)等一系列混合后的二进制数据。本文旨在记录自己在使用Java将文件转为字节数组的一些知识理解与汇总。 File
阅读全文