你改变了时间,也受到了时间的报复

elasticsearch 地理信息处理(java)

移动对象数据库和地理信息数据库有不少,它们在处理地信方面能力强大。比如Oracle和阿里云库。公司用的MySQL没有这种能力,需要通过业务代码来实现。不过公司使用的中间件,比如es和hbase都有地信索引和计算能力。这里简单说一下es的地理信息处理方式。

阅读全文
发布于2019-08-02

ASM核心API简介(2)

ASM 中生成和转换字节码的API主要是基于抽象类 ClassVisitor 的。这里讲一下 ClassVisitor 的用法。

阅读全文
发布于2019-08-02

Java类文件简析

java类文件的结构实际很简单,它不像本地可执行文件那样,类文件保留了源代码中的结构和几乎全部的符号信息。

阅读全文
发布于2019-08-01

ASM简介(1)

ASM 是一个Java运行时增强工具,与之类似的还有javassist。ASM 这个名字来源于C语言中内联汇编的关键字__asm,所以它没有特定的含义指向。

阅读全文
发布于2019-07-31

高德打车,这辈子不再用[有后续]

本来对高德印象不错,感觉它的地图做得比较用心,现在又依附阿里大厂,服务应该不错吧。可是一次打车后的体验,让我再也不敢使用高德服务 。

阅读全文
发布于2019-07-26

Java中模块的使用(6)高级模块用法

Java模块系统是给Java语言上增加的一项十分完善的特性。可能正是由于它是如此的丰富和完善(如之前介绍的用于兼容老代码的非具名模块,更加细腻的访问控制等),才一直从原定的Java7中拖延到了Java9中。本文介绍一点模块中的高级场景。

阅读全文
发布于2019-07-19

Java中模块的使用(5)服务加载器

Java的ServiceLoader(java.util.ServiceLoader,服务加载器)不是Java9中才出现的,Java6就开始使用了。这里的服务,可以简单的理解为Java接口,加载器加载的是接口的实现类(也可以说成服务是实现了接口的类)。在Java9以前主要用于实现spi机制,也就是动态加载实现类。Java9赋予了它新的功能,这篇文章简单讲一下ServiceLoader的使用。

阅读全文
发布于2019-07-11

akka使用场景及原理简介

Akka显然不是银弹。如果Akka很完美,那现在在开发领域也没spring框架什么事了,甚至没Java的事了:Akka会凭一己之力把Scala推向JVM第一编程语言的宝座。而现在并没有:这也不是我希望的,毕竟我喜欢Java还是远超Scala。Akka由其特性,限定了它能用的主要场景有限(但不是很少)。这篇文章简介描述一下Akka的使用场景和基本原理。

阅读全文
发布于2019-07-10

Pony语言简介

Pony语言,或者称为ponylang,是一门小众语言。诞生了有两三年,但是一直不温不火。它是基于Actor模型创建的语言,所以能够使用Actor模型的场景可以使用它。比如事件驱动、高并发、低延迟等。不过它的前辈,smalltalk、erlang、akka模型,没有一个🔥的,它想🔥还十分艰难。

阅读全文
发布于2019-07-09

Java中模块的使用(4)

在Java9以前,我们常有这种“痛楚”:写出来的类只想给应用内其他某个包中的类引用,但是由于声明为public的,导致任何一个类都可以引用。 java的模块系统可以帮我们避免这种情况。这里简单介绍一下如何更加严格的控制访问。

阅读全文
发布于2019-07-04

springboot项目中简单使用akka

Spring体系是Java开发中用的最多的框架,目前主要都用springboot。Akka是基于事件驱动的Actor模型,使用Scala开发,但也提供了Java版本的库。 这里简单演示一下如何在Spring项目中使用Akka。

阅读全文
发布于2019-07-03

Java中模块的使用(3) 使用命令行一步步体验

这里我们通过命令行来体验一下如何使用Java的模块。我的机器是Mac,但是其他机器也都一样,只是命令上有稍微的差别。最主要的是要记住使用Java 9+版本。

阅读全文
发布于2019-07-01