keytool -genkey -keyalg RSA -alias mykey -keystore keystore.jks -validity 365 -keysize 2048
SSLContext sslContext = SSLContexts.custom()
.loadTrustMaterial(new File("keystore.jks"), "password".toCharArray())
.build();
SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslContext);
CloseableHttpClient httpClient = HttpClientBuilder.create()
.setSSLSocketFactory(sslsf)
.build();
HttpPost httpPost = new HttpPost("https://example.com/api");
httpPost.setEntity(new StringEntity("request body"));
CloseableHttpResponse response = httpClient.execute(httpPost);
int statusCode = response.getStatusLine().getStatusCode();
String responseBody = EntityUtils.toString(response.getEntity());
response.close();
httpClient.close();