前言:实际工作中为了提高数据传输的安全性,采用HTTPS通讯,简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输,相比http协议安全。SSL证书需要到CA机构申请证书,仅为测试可以使用jdk生成自签证书。
**命令:**keytool -genkey -alias testhttps -keyalg RSA -keysize 2048 -validity 36500 -keystore “D:/tmp/ssl/testhttps.keystore”
命令解释:
-genkey 表示要创建一个新的密钥。-alias 表示 keystore 的别名。
-keyalg 表示使用的加密算法是 RSA。
-keysize 表示密钥的长度.。
-keystore 表示生成的密钥存放位直。
-validity 表示密钥的有效时间,单位为天。


server:
? port: 9090
? servlet:
? ? context-path: /ssl-service
? ssl:
? ? key-store: classpath:testhttps.keystore #类路径下的自签证书
? ? key-alias: testhttps # 证书别名
? ? key-store-password: 123456 #证书密码
? ? key-store-type: JKS # 证书类型
? ? enabled: true # 开启证书验证
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserInfo {
private String name;
private Integer age;
private String gender;
}
import com.ssl.demo.entity.UserInfo;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class UserController {
@RequestMapping("getUserInfo")
public UserInfo getUserInfo() {
UserInfo userInfo = new UserInfo("高富帅", 20, "男");
return userInfo;
}
}
在浏览器输入:https://localhost:9090/ssl-service/getUserInfo


本文章介绍的是浏览器使用https方式访问服务端接口,后续更新三方服务如何通过后台 使用https方式 访问服务端接口。
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦