- 博客(15)
- 收藏
- 关注
原创 外键约束实现数据完整
假设有两个表,一个是 ’base_data‘表用于存储基础数据,另一个是'business_data'表用于存储业务数据, 其中业务数据表通过 'base_data_id' 字段引用基础数据。当一条基础数据表中的数据被业务表数据使用,此时删除该表时 数据库会抛出一个外键约束错误('foreign key constraint violation'),从而阻碍删除。
2024-09-03 10:41:52
253
原创 Spring Boot中 CommandLineRunner 与 ApplicationRunner作用、区别
CommandLineRunner 和 ApplicationRunner 是 Spring Boot 提供的两种用于在应用程序启动后执行初始化代码的机制。这两种接口允许你在 Spring 应用上下文完全启动后执行一些自定义的代码,通常用于执行一次性初始化任务,如数据库预填充、缓存预热等。
2024-06-29 00:01:17
834
3
原创 Mybatis-Plus自定义sql
1、${ew.customSqlSegment} , 等同于 Where + queryWrapper中的查询条件;2、${ew.sqlSegment},等同于 queryWrapper中的查询条件;
2024-04-19 14:09:42
381
2
原创 RabbitMQ高级篇---消息可靠性
当消费者出现异常后,消息会不断requeue(重入队)到队列,再重新发送给消费者,然后再次异常,再次requeue,无限循环,导致mq的消息处理飙升,带来不必要的压力。解决方法:1)本地重试:我们可以利用Spring的retry机制,在消费者出现异常时利用本地重试,而不是无限制的requeue到mq队列。spring:rabbitmq:listener:simple:retry:enabled: true # 开启消费者失败重试。
2023-12-26 15:40:59
1262
1
原创 RabbitMQ基础篇
SpringAMQP是基于RabbitMQ封装的一套模板,并且还利用SpringBoot对其实现了自动装配,使用起来非常方便。自动声明队列、交换机及其绑定关系基于注解的监听器模式,异步接收消息封装了RabbitTemplate工具,用于发送消息Publisher:生产者,也就是要发送消息的程序,但是不再发送到队列中,而是发给X(交换机)Exchange:交换机,图中的X。一方面,接收生产者发送的消息。另一方面,知道如何处理消息,例如递交给某个特别队列、递交给所有队列、或是将消息丢弃。
2023-12-26 11:35:52
1693
1
原创 Docker镜像仓库:搭建私有镜像仓库
使用DockerCompose部署带有图象界面的DockerRegistry:如果像下面图片一样,可以看到版本号,则说明 它们已经安装成功。我们创建docker-compose.yml的文件并填充内容。填入以下内容:和。registry服务适用于存储和分发镜像的服务,使用镜像。将数据存储在主机的目录中。ui服务时一个带有图形界面的前端,使用了镜像。我们将其映射到主机端口,通过设置设置仓库名,通过设置环境变量,指向我们的服务。
2023-12-21 17:56:18
548
原创 CentOS8安装Docker以及Docker基本命令
删除本地的镜像: docker rmi **** 如:docker rmi nginx:latest。保存、导入镜像 : docker save -o [保存的目标文件名称] [镜像名称]docker volume inspect 显示一个或多个volume的信息。docker volume rm 删除一个或多个指定的volume。加载镜像:docker load -i ***2、docker run -v 数据卷的名称:容器中的目录。
2023-12-20 21:03:29
2626
原创 SpringCloud:Feign实现远程调用
类型作用说明修改日志级别包含四种不同的级别:NONE、BASIC、HEADERS、FULL响应结果的解析器http远程调用的结果做解析,例如解析json字符串为java对象请求参数编码将请求参数编码,便于通过http请求发送支持的注解格式失败重试机制请求失败的重试机制,默认是没有,不过会使用Ribbon的重试一般情况下,默认值就能满足我们使用,如果要自定义时,只需要创建自定义的@Bean覆盖默认Bean即可。
2023-12-19 16:33:56
1140
1
原创 Nacos配置管理
微服务要拉取nacos中管理的配置,并且与本地的application.yml配置合并,才能完成项目启动。注意:项目的核心配置,需要热更新的配置才有放到nacos管理的必要。微服务在启动时,会去nacos读取多个配置文件,如果配置文件中不包含环境的话,就可以被多个环境共享。不管是dev,还是test环境,都读取到了envSharedValue这个属性的值,所以配置是共享的。我们在修改nacos中的配置后,微服务无需重启即可让配置生效,这种就称为。首先,在服务中,引入nacos-config的客户端依赖。
2023-12-18 21:37:22
3174
1
原创 使用Eureka注册中心解决SpirngCloud微服务治理的问题
修改order-service服务中的cn.itcast.order.service包下的OrderService类中的queryOrderById方法。注意:一个微服务,既可以是服务提供者,又可以是服务消费者,因此eureka将服务注册、服务发现等功能统一封装到了eureka-client端。3、选择一个服务后,如果选中的的服务挂掉,或者有新的服务开启后,无法感知服务状态的变更。在eureka-server模块中的pom文件中导入eureka的starter依赖。1、服务调用者不知道服务提供者的地址;
2023-12-17 19:36:36
207
1
原创 SrpingBoot上传文件到七牛云并回显
创建bean对象 通过配置自动注入配置信息 (我这用的yml配置文件)或者properties中加入配置信息。1、首先登陆七牛云(注册省略)5、如果没有创建空间先创建空间。7、域名选择七牛云给的测试域名。3、选择对象存储Kodo。yml中加入配置信息。
2023-11-16 11:03:11
299
7
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人