小编hum*_*der的帖子

使 Spring Webclient 能够通过 HTTPS 与其他启用 TLS 的服务进行通信

我有 2 个服务 A 和 B,它们应该通过 HTTPS 相互通信。我已使用 Spring boot 的 server.ssl.* 属性为这两个应用程序启用了 TLS。我使用 WebClient 进行通信,其中服务 A 将使用 Web 客户端调用 B,而 B 将向 A 发送响应。对于通过 TLS 进行的通信,我的理解是 Web 客户端需要信任库数据,该数据将包含服务的证书被称为服务 B。

import java.io.FileInputStream;
import java.io.IOException;
import java.nio.file.Paths;
import java.security.KeyStore;
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
import java.security.cert.CertificateException;

import javax.net.ssl.SSLException;
import javax.net.ssl.TrustManagerFactory;

import org.springframework.boot.web.server.Ssl;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.client.reactive.ReactorClientHttpConnector;
import org.springframework.web.reactive.function.client.WebClient;


import io.netty.handler.ssl.SslContext;
import io.netty.handler.ssl.SslContextBuilder;
import lombok.extern.slf4j.Slf4j;
import reactor.netty.http.client.HttpClient;


@Slf4j
@Configuration
public class WebClientConfig {

    private final Ssl ssl;

    public WebClientConfig(final Ssl ssl) …
Run Code Online (Sandbox Code Playgroud)

ssl spring-boot spring-webflux spring-webclient

5
推荐指数
1
解决办法
1万
查看次数

Elasticsearch 6.3.2 的 NestedSortBuilder 使用示例

我必须对使用弹性 Java 高级其余客户端 api 嵌套的一级字段进行排序。我可以找到这个答案

Elasticsearch 嵌套排序

问题是答案使用 SortBuilder 使用以下代码对嵌套字段进行排序:

SortBuilder sb = SortBuilders.fieldSort("authorList.lastName")
    .order(SortOrder.ASC)
    .setNestedPath("authorList")
    .setNestedFilter(matchFirst);
Run Code Online (Sandbox Code Playgroud)

然而,似乎nestedPath 和NestedFilter 在6.3.2 elastic(deprication info)中已被弃用,并且引入了新的NestedSortBuilder。但是我无法使用它构建查询。任何人都可以解释如何使用它,或者给我指出一个使用它的例子吗?

java elasticsearch elasticsearch-nested

3
推荐指数
1
解决办法
1673
查看次数

Instant.toEpochMilli()可以用作唯一id吗?

我必须生成一个唯一的 ID,该 ID 也是可读的,因此不能使用 UUID。所以我想到了使用Instant.toEpochMilli()。可以用作唯一ID吗?

java uniqueidentifier java.time.instant

0
推荐指数
1
解决办法
1432
查看次数