项目
文章平均质量分 57
菜菜的后端私房菜
专注Java后端技术栈,热爱工作,热爱生活,关注菜菜,分享更多干货日常哟~
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
项目整合支付宝支付
项目整合支付宝支付功能 加密过程 对称加密不安全,获得任何一方密钥就可以篡改数据,所以使用非对称加密 非对称加密: 公钥交给(给自己发消息的)别人,私钥自己来使用 支付宝使用了2对密钥,分别是商户密钥和支付宝密钥 商户使用商户密钥对数据进行加密得到签名发给支付宝 支付宝对数据使用商户公钥,对签名进行验证,验证成功才允许下一步逻辑(展示出扫码界面) 扫码支付成功后,支付宝使用支付宝密钥对数据进行加密得到签名发送给商户 商户对数据使用支付宝公钥,对签名进行验证,验证成功说明响应的消息是正确的 内网穿透 别原创 2021-07-23 10:29:52 · 670 阅读 · 0 评论 -
Feign远程调用丢失请求头问题
Feign远程调用丢失请求头问题 使用Feign远程调用默认不会携带请求头 如果把一些登录的信息放在Cookie中,再使用Feign远程调用时,默认情况下生产者处理的业务,会因为不能从请求头中获取登录状态而返回错误的结果 如果生产者需要请求头,则要向容器中添加请求拦截器(feign构造时会使用容器中的请求拦截器来构造,如果没有就用默认的) @Configuration public class GulimallFeignConfig { //请求拦截器 解决Feign远程调用没有请求头问题原创 2021-07-17 23:48:41 · 400 阅读 · 0 评论 -
初识单点登录
单点登录 核心 登录成功,登录服务器生成token和对应用户信息以KV形式保存在reids中,并且留下登陆过的标记(Cookie:可以用token充当这个cookie) 后续还有其他客户服务器要判定登录时来到登录服务器,发现还有登录过的标记(这个Cookie就是token)就将这个token返回给对应客户服务器 然后这个客户服务器携带这个token来登录服务器(或redis中)查询对应信息 如果查询的出来,说明登录过,将用户信息保留在客户服务器session中,通过认证 如果查询不出来,说明验证未通原创 2021-07-15 23:30:01 · 204 阅读 · 0 评论 -
分布式下session认证出现的问题与使用spring session解决
分布式下session认证存在的问题 session认证: 客户端在服务端登录认证后,服务端自己保存用户信息,并把session_id放到客户端的cookie中,下次客户端带着cookie访问服务端就可以直接访问 这种session认证在分布式下会存在问题 无法访问其他相同模块的集群服务器 因为只在一个服务端上保存信息,其他相同的集群服务器没保存 无法访问其他模块的服务器 因为其他模块的服务器上未保存信息,所以无法访问 解决方案 session复制 只需要改tomcat配置文件 占服务原创 2021-07-15 09:53:53 · 975 阅读 · 2 评论 -
Java实现社交登录
Java实现社交登录 社交登录可以分为大体四个步骤 引导用户进入授权页 GET https://api.weibo.com/oauth2/authorize?client_id=你的开发者app key&response_type=code&redirect_uri=授权成功跳转地址 授权认证成功后返回code 授权成功跳转地址?code=1fe1f1caf1d58e727b8cb00be74d4dc1 使用code和开发者相关信息换取access_token POST htt原创 2021-07-13 23:44:16 · 428 阅读 · 0 评论 -
线程池与异步任务
文章目录线程池与异步任务启动线程的几种方式线程池的创建线程池实现原理CompletableFuture 异步编排启动异步任务完成回调和异常感知异步任务完成时的处理两任务组合两组任务完成后要执行的任务两组任务任一任务完成后要执行的任务多任务组合项目整合异步任务1.编写线程池配置文件类2.导入依赖3.编写线程池组件4.编写异步任务核心代码 线程池与异步任务 启动线程的几种方式 在项目中只使用线程池的方式,这种池化技术节省资源开销,能够控制资源 池化技术:事先准备好一些资源,要使用就去池子里拿,用完了要还到池子原创 2021-07-07 23:02:44 · 385 阅读 · 0 评论 -
统一异常处理
统一异常处理 自定义异常类 public class ServerException extends Exception{ public ServerException(String message) { super(message); } } 统一异常处理 使用注解@RestControllerAdvice 该注解包含@ControllerAdivce 和 @ResponseBody(方便转为JSON格式) 在定义的方法上使用@ExceptionHandler(v原创 2021-06-18 11:17:31 · 185 阅读 · 0 评论
分享