随笔分类 - 配置
各类框架的配置教程
摘要:Sentinel 微服务保护的技术有很多,但在目前国内使用较多的还是Sentinel,所以接下来我们学习Sentinel的使用。 介绍和安装 Sentinel是阿里巴巴开源的一款服务保护框架,目前已经加入SpringCloudAlibaba中。官方网站: https://sentinelguard.
阅读全文
摘要:配置热更新 有很多的业务相关参数,将来可能会根据实际情况临时调整。例如购物车业务,购物车数量有一个上限,默认是10,对应代码如下: 现在这里购物车是写死的固定值,我们应该将其配置在配置文件中,方便后期修改。 但现在的问题是,即便写在配置文件中,修改了配置还是需要重新打包、重启服务才能生效。能不能不用
阅读全文
摘要:网关登录校验 单体架构时我们只需要完成一次用户登录、身份校验,就可以在所有业务中获取到用户信息。而微服务拆分后,每个微服务都独立部署,不再共享数据。也就意味着每个微服务都需要做登录校验,这显然不可取。 鉴权思路分析 我们的登录是基于JWT来实现的,校验JWT的算法复杂,而且需要用到秘钥。如果每个微服
阅读全文
摘要:网关路由 认识网关 什么是网关? 顾明思议,网关就是网络的关口。数据在网络间传输,从一个网络传输到另一网络时就需要经过网关来做数据的路由和转发以及数据安全的校验。 更通俗的来讲,网关就像是以前园区传达室的大爷。 外面的人要想进入园区,必须经过大爷的认可,如果你是不怀好意的人,肯定被直接拦截。 外面的
阅读全文
摘要:MyBatis的JdbcType与MySQL数据类型之间存在一定的对应关系,这些映射帮助MyBatis在处理SQL查询时正确地将数据库中的数据类型转换为Java对象。以下是一些常用的MyBatis JdbcType与MySQL数据类型的对应关系:BIGINT- 对应MySQL的 BIGINT 类型,
阅读全文
摘要:OpenFeign 利用Nacos实现了服务的治理,利用RestTemplate实现了服务的远程调用。但是远程调用的代码太复杂了,而且这种调用方式,与原本的本地方法调用差异太大,编程时的体验也不统一,一会儿远程调用,一会儿本地调用。 因此,我们必须想办法改变远程调用的开发模式,让远程调用像本地方法调
阅读全文
摘要:3.2.Nacos注册中心 目前开源的注册中心框架有很多,国内比较常见的有: Eureka:Netflix公司出品,目前被集成在SpringCloud当中,一般用于Java应用 Nacos:Alibaba公司出品,目前被集成在SpringCloudAlibaba中,一般用于Java应用 Consul
阅读全文
摘要:# 启动nginx start nginx.exe # 停止 nginx.exe -s stop # 重新加载配置 nginx.exe -s reload # 重启 nginx.exe -s restart
阅读全文
摘要:本安装教程参考Docker官方文档,地址如下: https://docs.docker.com/engine/install/centos/ 1.卸载旧版 首先如果系统中已经存在旧的Docker,则先卸载: yum remove docker \ docker-client \ docker-cli
阅读全文
摘要:安装OSS Java SDK_对象存储(OSS)-阿里云帮助中心 (aliyun.com) 参照官方提供的SDK,改造一下,即可实现文件上传功能: public class AliyunOSSTest { @Test public void testUploadFile() throws Exce
阅读全文
摘要:在未引入分页插件的情况下,MybatisPlus是不支持分页功能的,IService和BaseMapper中的分页方法都无法正常起效。 所以,我们必须配置分页插件。 配置分页插件 在项目中新建一个配置类: 其代码如下: package com.itheima.mp.config; import co
阅读全文
摘要:目前我们配置文件中的很多参数都是明文,如果开发人员发生流动,很容易导致敏感信息的泄露。所以MybatisPlus支持配置文件的加密和解密功能。 我们以数据库的用户名和密码为例。 生成秘钥 首先,我们利用AES工具生成一个随机秘钥,然后对用户名、密码加密: package com.itheima.mp
阅读全文
摘要:数据库的user表中有一个info字段,是JSON类型: 格式像这样: {"age": 20, "intro": "佛系青年", "gender": "male"} 而目前User实体类中却是String类型: 这样一来,我们要读取info中的属性时就非常不方便。如果要方便获取,info的类型最好是
阅读全文
摘要:在application.yaml文件中添加配置: mybatis-plus: configuration: default-enum-type-handler: com.baomidou.mybatisplus.core.handlers.MybatisEnumTypeHandler 测试 @Te
阅读全文
摘要:对于一些比较重要的数据,我们往往会采用逻辑删除的方案,即: 在表中添加一个字段标记数据是否被删除 当删除数据时把标记置为true 查询时过滤掉标记为true的数据 一旦采用了逻辑删除,所有的查询和删除逻辑都要跟着变化,非常麻烦。 为了解决这个问题,MybatisPlus就添加了对逻辑删除的支持。 注
阅读全文
摘要:批量新增 IService中的批量新增功能使用起来非常方便,但有一点注意事项,我们先来测试一下。 首先我们测试逐条插入数据: @Test void testSaveOneByOne() { long b = System.currentTimeMillis(); for (int i = 1; i
阅读全文
摘要:命令 说明 文档地址 docker network create 创建一个网络 docker network create docker network ls 查看所有网络 docs.docker.com docker network rm 删除指定网络 docs.docker.com docker
阅读全文
摘要:例如,要基于Ubuntu镜像来构建一个Java应用,其Dockerfile内容如下: # 指定基础镜像 FROM ubuntu:16.04 # 配置环境变量,JDK的安装目录、容器内时区 ENV JAVA_DIR=/usr/local ENV TZ=Asia/Shanghai # 拷贝jdk和jav
阅读全文