1、核心场景1.解耦(为面向服务的架构(SOA)提供基本的最终一致性实现)  场景说明:用户下单后,订单系统需要通知库存系统。传统的做法是,订单系统调用库存系统的接口。 传统模式的缺点:  1.假如库存系统无法访问,则订单减库存将失败,从而导致订单失败  2.订单系统与库存系统耦合引入消息队列   订单系统:用户下单后,订单系统完成持久化处理,将消息写入消息队列,返回用户订单下单成功  库存系统:
转载 2024-10-17 12:09:04
40阅读
Redis集合与SpringBoot首先Redis在Java上的原生API是Jedis ,它的使用方式和Redis的命令行基本一致 需要注意的是,如果写事务的话,需要自行用tryCatch来阻拦运行时的报错,保证事务的原子性Redis通过Spring-data-redis来集合到SpringBoot中 【源码分析】:在中,SpringFramwork有一个AutoConfig包,在里面
转载 2024-03-21 00:03:37
107阅读
消息的持久是消息队列必备的功能之一。在这篇文章中,就介绍一下RabbitMQ的持久机制,和它的使用。 队列的持久在前几篇的例子中,我们常常看到如下定义queue的方法: channel.QueueDeclare("Q1", false, false, false, null); 方法的第四的参数autoDelete,一般都会输入false。文档描述这个参数如果是true的话,意思是
1. 前言一个系统在于数据库交互的过程中,内存的速度远远快于硬盘速度,当我们重复地获取相同数据时,我们一次又一次地请求数据库或远程服务,者无疑时性能上地浪费(这会导致大量时间被浪费在数据库查询或者远程方法调用上致使程序性能恶化),于是有了“缓存”。 本文将介绍在spring boot项目开发中怎样使用spring提供的Spring Cache 与最近很火的 Redis 数据库来实现数据的缓存。2.
转载 2024-03-12 17:42:30
98阅读
类解耦通过反射来创建对象,避免通过new关键字读取配置文件来获取要创建的对象的全限定类名(唯一标志)结构持久持久层接口持久层实现业务层业务层接口业务层实现持久层调用jdbc,业务层调用持久层,表现层调用业务层,会存在类相互依赖的情况,需要解耦编译期依赖:没有某个类,不能正常编译实际开发应做到,编译期不依赖,运行时依赖spring的IOC容器是Map结构,一个id对应一个objectspring
转载 2024-07-11 12:41:56
54阅读
@TOC(目录)1.日志的作用日志是程序的重要组成部分,在程序报错的时候,如果我们不看日志,是很难排查出错误的,除非你真的是很有经验.所以日志最主要的作用就是排除和定位问题.日志提供的功能:1.记录⽤户登录⽇志,⽅便分析⽤户是正常登录还是恶意⽤户。2.记录系统的操作⽇志,⽅便数据恢复和定位操作⼈。3.记录程序的执⾏时间,⽅便为以后优化程序提供数据⽀持举例:1.记录⽤户登录⽇志,⽅便分析⽤户是正常登
推荐 原创 2022-08-16 10:59:03
3399阅读
3点赞
Redis整合到string boot中我们先创建一个新项目配置pom文件,将如图两组插件放置下载<!-- redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</ar
转载 2023-08-01 23:03:49
251阅读
Spring与JPASpring Data是一个非常大的伞形项目,由多个子项目组成,其中大多数子项目都关注对不同的数据库类型进行数据持久。比较流行的几个Spring Data项目包括:Spring Data JPA:基于关系型数据库进行JPA持久。 Spring Data MongoDB:持久到Mongo文档数据库。Spring Data Neo4j:持久到Neo4j图数据库。 Sprin
转载 5月前
25阅读
Hibernate的DAO提供了两个工具类:HibernateTemplate和HibernateDaoSupport     HibernateTemplateHibernateTemplate是Spring提供的一个就Hibernate访问持久层技术而言、支持Dao组件的一个工具。HibernateTemplate提供持久层访问模板,应用Hibernat
转载 1月前
402阅读
之前我们简单介绍了rabbitmq的功能。他的作用就是方便我们的消息解耦。紧接着问题就会暴露出来。解耦就设计到双方系统不稳定问题。在mq中有生产者、mq、消费者三个角色。其中一个角色down机或者重启后。就设计到消息的丢失问题。因为MQ整个消息周期设计到上述的三个角色,所以我们从这个三个角色开始讨论丢失数据的情况。并如何解决生产者丢失消息在生产数据程序中,消息已经处理好还未发送给MQ这个阶段,生产
上一篇我们简单介绍了基于SpringBoot实现简单的Web开发,本节来看Web开发中必不可少的内容——数据持久先看项目结构:  1. 创建数据表打开mysql,打开数据库 test (没有可以创建一个),创建表格 person给 person 表创建两个字段 id、name       2. 打开 pom.xml,
转载 2023-12-10 21:22:29
460阅读
# Springboot 集成 Spring Authorization Server 持久到MySQL ## 1. 流程概述 在这个项目中,我们将使用Springboot搭建一个基于OAuth2的认证服务器,同时将认证信息持久到MySQL数据库中。下面是整个流程的步骤概述: | 步骤 | 操作 | | ---- | ---- | | 1 | 创建Springboot项目 | | 2 |
原创 2024-05-11 07:17:45
205阅读
添加依赖注:如果你使用的是 SpringBoot 3.x,只需要将 sa-token-spring-boot-starter 修改为 sa-token-spring-boot3-starter 即可。 cn.dev33 sa-token-spring-boot-starter 1.34.0 设置配置文件端口server.port=8081#
转载 2024-09-26 13:26:05
64阅读
前言有时候,我们会将任务放到数据库中,等我们需要的是,自动从前台进行点
原创 2022-09-01 05:39:56
1938阅读
介绍 基本上,数据库设置涉及几个步骤,然后才能在应用程序中通过已配置的数据源使用它。 在实际项目实施中,这实际上是必需的。 但是,在某些情况下,我们只需要为某些事情完成POC,而整个数据库设置工作仍然是必须的。 同样,对于单元测试,理想的是在数据库中拥有我们自己的记录集,使其独立,而不受部署环境中数据更改的影响。 对于此类用例,内存数据库是理想的解决方案。 内存数据库在应用程序启动时创建,而
转载 2024-10-10 10:13:00
234阅读
性能调优影响MySQLServer 性能的相关因素商业需求对性能的影响系统架构及实现对性能的影响Query语句对系统性能的影响Schema设计对系统的性能影响硬件环境对系统性能的影响MySQL 数据库锁定机制MySQL锁定机制简介各种锁定机制分析合理利用锁机制优化MySQLMySQL数据库Query 的优化解析MySQL的QueryOptimizerQuery语句优化基本思路和原则充分利用Expl
转载 2024-06-20 08:02:29
36阅读
## Spring Boot Redis 持久 ### 简介 在传统的Web应用程序中,数据通常是存储在关系型数据库中。然而,对于一些特定的场景,使用关系型数据库可能会带来一些性能和扩展性的问题。为了解决这些问题,NoSQL数据库逐渐流行起来。Redis是一种基于内存的键值存储数据库,它提供了高性能、高可用性和可扩展性。 在Spring Boot应用程序中,使用Redis作为数据持久层是
原创 2023-09-29 18:09:16
217阅读
文章目录概念1.SpringBoot+jdbctemplate2.SpringBoot+MyBatis3.SpringBoot+Spring Date JPA SpringBoot提供的数据持久层的解决方案:SpringBoot+jdbctemplate(用的很少,自己demo用用挺好,轻量级,功能比较少)SpringBoot+MyBatis(实际开发中使用最多)SpringBoot+Sprin
转载 2024-09-14 10:06:15
57阅读
SpringBoot学习——使用logback配置日志java中创建日志对象在springboot的启动类中输出各个级别的日志信息。 MainStart.javapackage com.gyqc.ms; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.Banner;
转载 2024-09-15 16:23:12
13阅读
默认配置注:默认情况下,持久配置是关闭的#持久化开关配置(yes 开启 no 关闭)appendonly no#持久类型#always: 每次操作都会立即写入aof文件中(性能最低,不推荐)#everysec: 每秒持久一次(默认配置)(折中方案,推荐)#no: 不主动进行同步操作,默认30s一次(redis重启或服务器重启会丢失3
转载 2023-08-31 16:26:03
0阅读
  • 1
  • 2
  • 3
  • 4
  • 5