AxonFramework工作单元

工作单元是Axon Framework的一个重要的概念,虽然在大多数情况下你可能不太直接与它交互。消息的处理被视为一个独立单元。工作单元的目的是在处理一条消息(命令或事件)期间去协调行为的执行。组件可以在工作单元每一个阶段执行注册行为,如onPrepareCommit或onCleanup。

查看更多

ElasticSearch查询报错fielddata=true

记录下ElasticSearch查询报错的解决方案,今天在java中查询ElasticSearch的数据发生报错。

查看更多

AxonFramework消息、命令和事件

消息传送的概念

消息是Axon的核心概念之一。组件之间的所有通信都使用消息对象完成。这为这些组件提供了位置透明性,在必要时需要能够进行扩展和分发这些组件。

尽管所有这些消息都实现了消息接口,但不同类型的消息及其处理方式之间有明显的区别。所有消息包含payload、元数据和唯一标识符。消息的payload是消息的功能说明。该对象的类名组合与它所携带的数据,描述了消息的应用程序的含义。元数据允许你描述正在发送消息的上下文。例如,你可以存储跟踪信息,以允许跟踪消息的来源或原因。你还可以存储信息以描述正在执行命令的安全上下文。

查看更多

AxonFramework架构概述

CQRS本身是一个非常简单的模式。它只规定了处理命令的应用程序的组件应该与处理查询 的组件分离。 虽然这种分离本身非常简单,但它与其他模式结合时提供了许多非常强大的功能。Axon 提供的构件更容易实现不同的模式与CQRS的结合。

查看更多

AxonFramework简介

Axon是一个轻量级框架,可帮助开发人员在架构级别构建可伸缩和可伸缩的应用程序。 (注:基于DDD域驱动设计的CQRS框架)

查看更多

【Java学习之从头开始】Java集合-1——HashTable类

一、简介

和HashMap一样,HashTable 也是一个散列表,它存储的内容是键值对(key-value)映射。
HashTable 继承于Dictionary,实现了Map、Cloneable、java.io.Serializable接口。
HashTable 的函数都是同步的,这意味着它是线程安全的。它的key、value都不可以为null。此外,HashTable中的映射不是有序的。

查看更多

【Java学习之从头开始】Java集合-0——HashMap类

一、原理实现

hashMap的本质是一个数组,数组中每一个元素称为一个Node,Node中存放的是hash值与链表(或红黑树)的键值对。
hashMap的存储过程如下:
根据 key 计算出它的哈希值 h。
假设Node的个数为 n,那么这个键值对应该放在第 (h % n) 个Node中。

查看更多

手把手教学,教你把你的个人项目推送到maven中央仓库

前言

最近闲下来了,想要自己造点小轮子用,方便自己在不同项目使用,同时想偷懒,不想每次都在项目里面copy代码。于是想到了重要仓库这个东西,把自己的代码托管到github(虽然现在的github已经不再单纯),然后发布jar包到maven中央仓库,以后每个项目都只用引入maven依赖就可以了。同时还能方便好基友们使用,万一哪一天好基友高兴就献身了呢,想想就有点小激动呢。好了废话不多说,下面正式开始手把手教学活动。

查看更多

【Java学习之从头开始】Java基础-1——String类

一、简介

1.1 成员变量

1
2
3
4
5
6
7
8
9
10
public final class String implements java.io.Serializable, Comparable<String>, CharSequence {

private final char value[];

private int hash; // Default to 0

private static final long serialVersionUID = -6849794470754667710L;

private static final ObjectStreamField[] serialPersistentFields = new ObjectStreamField[0];
}

从源码可以看出,String底层是通过一个不可变的字符串常量来进行维护的。所以只要一个字符改变就会生成一个新的String类型对象。

查看更多

【Java学习之从头开始】Java基础-0——Object类

从这篇文章起就正式开始Java学习之旅了。java中,万物皆对象,所以第一篇先学习Java的Object类,循序渐进。

查看更多