标签:spring

JSON 之 Jackson

Jackson 是 Java 生态下的一款 JSON (返)序列化工具,具有高效、强大、安全(没有 Fastjson 那么多的安全漏洞)等特性。同时应用广泛,Spring Boot/Cloud、Akka、Spark 等众多框架都将其作为默认 JSON 处理工具。 依赖要使用 Jackson,需要在项目中添加如下依赖(注:使用 Spring Boot 时不需要手动添加,Spring 框架已经默认包含

微服务开放环境:Spring & Akka & Docker

随着微服务的流行,服务拆分与服务依赖越来越多,想在本机搭建一套完整的开发环境愈来愈有挑战。代码服务还好,多开几个 IDE 并启动多个应用服务即可,但若你使用了多种数据库系统、缓存系统、消息系统等时,在本机手动安装就非常繁琐了……可以通过 Docker 来简化这些系统的安装。 本文是对近一年微服务开发环境实践记录,我们在微服务开发中混合使用了 Spring Cloud 框架和 Akka 库,同时应用

使用WebFlux与Reactor-当流为 Empty 时的注意事项

注意empty会造成之后的所有转换操作不执行当Mono<T>的计算结果为empty时,在它之后添加的多个转换操作都不会被触发执行。有一些方法可以解决这个问题: 使用Optional<T>来包裹可能为空的数据类型。 1Mono<Optional<User>> findById(String userId); 使用.switchIfEmpty或.d

反应式的Spring

Spring从5.0开始拥抱反应式(Reactive)开发,通过Reactor和WebFlux来支持反应式的开发模式。有关反应式更多的内容可以阅读 《反应式宣言》 。反应式系统具有以下物质:即时响应性(Responsive)、回弹性(Resilient)、弹性(Elastic)以及消息驱动(Message Driven)。 对于这样的系统,我们称之为反应式系统(Reactive System)。这

Spring应用enum处理

原文地址:https://www.yangbajing.me/2019/04/17/spring应用enum处理/ 在Spring应用开发中,Java枚举(enum)默认都是使用字符串进行序列化/反序列化的。都通常我们都想将其序列化/反序列化为int值。 MyBatisMyBatis-plus提供了插件用于自定义enum的序列化/反序列化,非常方便。只需要在application.properti

Java/Scala互操作实践 1:基础操作

本文将以Spring Boot为例,介绍下实际工作中的Java/Scala互操作。在提高个人效率、满足自我追求的情况下更多的照顾到团队不同人的实际。同时也是想说明,在同一个工程里混用Java和Scala语言是可能的。 本文源代码在:http://git.oschina.net/hualongdata/spring-starter 对于Scala不熟悉的Java程序员可以先看看:《写给Java程序

Scala开发者的Spring-Boot快速上手指南 02:Scala惯用法

(这是一篇迟来的文章,从3月份计划到成文花了5个月多……以后需要避免这样的低效率。) 之前写第一篇文章时,只是想试试在Spring中使用Scala。但现在随着工作的需要,已经决定在应用层基于Spring boot进行开发。后面的数据服务和数据整合部分将采用Akka。作者是一个Scala粉,但不脑残。鉴于团队、招人及社区生态多方面考虑,整体使用Scala技术栈还是比较困难的。之前就有考虑过把Spri

Scala开发者的Spring-Boot快速上手指南 01

做为一个Scala爱好者,是很想基于 Lightbend 的一套架构进行软件开发的。Play,Akka,Scala,Spark……。不过理想很丰满,现实却很骨感。鉴于那批原教旨主义者,他们对 Spring 已经疯狂迷恋,我等讲道理、讲实际的人也只好将 Scala 与 Spring Boot 进行整合。这两兄弟是和睦的,是友好的,并不是有你无他,完全可以在能力和现实中实现一个美好的平衡。 (文章查考