- 所有在使用“utf8”的MySQL和MariaDB用户都应该改用“utf8mb4”,永远都不要再使用“utf8”。 MySQL的“utf8”不是真正的UTF-8。“utf8”只支持每个字符最多三个字节,而真正的UTF-8是每个字符最多四个字节。 MySQL一直没有修复这个bug,他们在2010年发布了一个叫作“utf8mb4”的字符集,绕过这个问题。 几乎所有的... 所有在使用“utf8”的MySQL和MariaDB用户都应该改用“utf8mb4”,永远都不要再使用“utf8”。 MySQL的“utf8”不是真正的UTF-8。“utf8”只支持每个字符最多三个字节,而真正的UTF-8是每个字符最多四个字节。 MySQL一直没有修复这个bug,他们在2010年发布了一个叫作“utf8mb4”的字符集,绕过这个问题。 几乎所有的...
- CQRS(Command Query Responsibility Segregation),命令查询责任隔离。我最初听到的是Greg Young描述的一种模式。其核心思想是,可以使用与用于读取信息的模型不同的模型来更新信息。在某些情况下,这种分离可能很有价值,但请注意,对于大多数系统,CQRS会增加风险的复杂性。 人们用于与信息系统进行交互的主流方法是将其视为CRUD... CQRS(Command Query Responsibility Segregation),命令查询责任隔离。我最初听到的是Greg Young描述的一种模式。其核心思想是,可以使用与用于读取信息的模型不同的模型来更新信息。在某些情况下,这种分离可能很有价值,但请注意,对于大多数系统,CQRS会增加风险的复杂性。 人们用于与信息系统进行交互的主流方法是将其视为CRUD...
- 1 前言 很多需要使用事务的场景,都只是在方法上直接添加个@Transactional注解 但是,你以为这真的够了吗? 事务如果未达到完美效果,在开发和测试阶段都难以被发现,因为你难以考虑到太多意外场景。但当业务数据量发展,就可能导致大量数据不一致的问题,就会造成前人栽树后人踩坑,需要大量人力排查解决问题和修复数据。 2 如何确认Spring事务生效了? 使用... 1 前言 很多需要使用事务的场景,都只是在方法上直接添加个@Transactional注解 但是,你以为这真的够了吗? 事务如果未达到完美效果,在开发和测试阶段都难以被发现,因为你难以考虑到太多意外场景。但当业务数据量发展,就可能导致大量数据不一致的问题,就会造成前人栽树后人踩坑,需要大量人力排查解决问题和修复数据。 2 如何确认Spring事务生效了? 使用...
- 数据库也需要合理控制资源的访问规则,而锁就是用来实现这些访问规则的数据结构。 根据加锁的范围,MySQL里面的锁大致可以分成 全局锁表级锁行锁 今天先说全局锁和表级锁。 全局锁 对整个数据库实例加锁。MySQL提供了一个加全局读锁的命令 Flush tables with read lock (FTWRL) 1 当需要让整个库只读时,可使用该命令,之后其... 数据库也需要合理控制资源的访问规则,而锁就是用来实现这些访问规则的数据结构。 根据加锁的范围,MySQL里面的锁大致可以分成 全局锁表级锁行锁 今天先说全局锁和表级锁。 全局锁 对整个数据库实例加锁。MySQL提供了一个加全局读锁的命令 Flush tables with read lock (FTWRL) 1 当需要让整个库只读时,可使用该命令,之后其...
- 记下 DB 存取与文件存取的差异 本文来源于之前做的一个小程序科技爱好者周刊在文章数据存储上的技术选型思考。 当时想着后期把文章 markdown 文件内容迁移到云数据库通过云函数查询出来显示。后来想想为什么非要这么做呢,数据库存取就一定好吗?? 存储数据方式 数据库的要比单纯的文件存储复杂很多。 以 Oracle 为例: 从数据库的内存结构上来看,一个运行的数据... 记下 DB 存取与文件存取的差异 本文来源于之前做的一个小程序科技爱好者周刊在文章数据存储上的技术选型思考。 当时想着后期把文章 markdown 文件内容迁移到云数据库通过云函数查询出来显示。后来想想为什么非要这么做呢,数据库存取就一定好吗?? 存储数据方式 数据库的要比单纯的文件存储复杂很多。 以 Oracle 为例: 从数据库的内存结构上来看,一个运行的数据...
- 题目回数是指从左向右读和从右向左读都是一样的数,例如123321,909。请利用filter()滤掉非回数。 1、程序分析 filter()把传入的函数一次作用于每个元素,然后如果返回值是True,则保留该元素,如果返回值为False,则丢弃该元素。 利用切片方法:[:... 题目回数是指从左向右读和从右向左读都是一样的数,例如123321,909。请利用filter()滤掉非回数。 1、程序分析 filter()把传入的函数一次作用于每个元素,然后如果返回值是True,则保留该元素,如果返回值为False,则丢弃该元素。 利用切片方法:[:...
- FlyBlog 二期90天进阶训练营的课程课后作业,搭建一个blog 20181101更新 摘要 本期主要完成了集成mybatis plus、lombok,Redis,做好全局异常处理,并且把layui社区的页面集成到项目中,然后就是完成首页的渲染。 环境 框架版本springboot2.0.1.RELEASEJDK1.8mysql5.6 项目结构 集... FlyBlog 二期90天进阶训练营的课程课后作业,搭建一个blog 20181101更新 摘要 本期主要完成了集成mybatis plus、lombok,Redis,做好全局异常处理,并且把layui社区的页面集成到项目中,然后就是完成首页的渲染。 环境 框架版本springboot2.0.1.RELEASEJDK1.8mysql5.6 项目结构 集...
- 废话不多说,直接撸代码!!! //下面的代码是一个实现C++连接MYSQL数据库的很好的例子//这里用了建表,插入,检索,删表等常用功能//我用VC++6.0生成,已经成功连接了。//在VC++6.0中要想把做一下两步准备工作才可以。//(1)Tools->Options->Directories->Include files中添加C:\Prog... 废话不多说,直接撸代码!!! //下面的代码是一个实现C++连接MYSQL数据库的很好的例子//这里用了建表,插入,检索,删表等常用功能//我用VC++6.0生成,已经成功连接了。//在VC++6.0中要想把做一下两步准备工作才可以。//(1)Tools->Options->Directories->Include files中添加C:\Prog...
- 前言 上一篇我们介绍了Redis的持久化,这一篇我们接着来学习Redis的事务。将从如下几个方面进行阐述,事务的介绍,Redis事务的介绍,Redis事务与数据库事务的区别。 事务 何为事务呢?我的理解是事务是一种机制,是一个不可分割的工作单元,要么都执行,要么都不执行。其具有如下四个特性: 原子性(Atomicity) 原子性是指事务是一个不可分割的工作单元,... 前言 上一篇我们介绍了Redis的持久化,这一篇我们接着来学习Redis的事务。将从如下几个方面进行阐述,事务的介绍,Redis事务的介绍,Redis事务与数据库事务的区别。 事务 何为事务呢?我的理解是事务是一种机制,是一个不可分割的工作单元,要么都执行,要么都不执行。其具有如下四个特性: 原子性(Atomicity) 原子性是指事务是一个不可分割的工作单元,...
- 前言 上一篇我们介绍了Redis06-Redis的数据库与键空间,这一篇我们介绍一下Redis数据库中如何给键设置过期时间,以及过期键删除策略。 键的过期时间如何设置? 在Redis中我们可以通过四个不同的命令来给键设置过期时间,分别是: EXPIRE <key> <ttl> 命令用于将键key的生存时间设置成ttl秒。(TTL的意思是 ... 前言 上一篇我们介绍了Redis06-Redis的数据库与键空间,这一篇我们介绍一下Redis数据库中如何给键设置过期时间,以及过期键删除策略。 键的过期时间如何设置? 在Redis中我们可以通过四个不同的命令来给键设置过期时间,分别是: EXPIRE <key> <ttl> 命令用于将键key的生存时间设置成ttl秒。(TTL的意思是 ...
- 前言 前面我们介绍了Redis的五种数据结构,这一篇我们换一个角度,让我们来看看Redis服务器的数据库。单个Redis服务器默认会创建16个数据库,数据库之间的数据是相互隔离的。默认的话使用的是0库。 数据库 Redis服务器将所有数据库都保存在服务器状态 redis.h/redisServer结构的db数组中,db数组的每个项都是一个redis.h/redis... 前言 前面我们介绍了Redis的五种数据结构,这一篇我们换一个角度,让我们来看看Redis服务器的数据库。单个Redis服务器默认会创建16个数据库,数据库之间的数据是相互隔离的。默认的话使用的是0库。 数据库 Redis服务器将所有数据库都保存在服务器状态 redis.h/redisServer结构的db数组中,db数组的每个项都是一个redis.h/redis...
- 方法的主要思想是:由于cloudera-manager在安装的时候,会配置相应的数据库,该数据库是用来存储集群的所有的配置信息。 cloudera-manager每次启动的时候,都会从数据库中读取这些配置信息,因此想修改主机的ip,只需要修改存在数据库中的主机的ip即可。 步骤如下: step1:首先在安装cloudera-manager的主机上,停止所有的clo... 方法的主要思想是:由于cloudera-manager在安装的时候,会配置相应的数据库,该数据库是用来存储集群的所有的配置信息。 cloudera-manager每次启动的时候,都会从数据库中读取这些配置信息,因此想修改主机的ip,只需要修改存在数据库中的主机的ip即可。 步骤如下: step1:首先在安装cloudera-manager的主机上,停止所有的clo...
- 用数据库的话,至少会涉及到这几张表: 用户表,角色表,权限表 角色和用户是一对多的关系 多个用户可以拥有同一个角色 角色和权限在这里也是一对多的关系 一个角色可以拥有很多个权限 数据库表名: t_role 角色表 并插入如下数据 t_user 用户表 roleId关联角色表 t_permission 权限表 roleId关联角色表 ... 用数据库的话,至少会涉及到这几张表: 用户表,角色表,权限表 角色和用户是一对多的关系 多个用户可以拥有同一个角色 角色和权限在这里也是一对多的关系 一个角色可以拥有很多个权限 数据库表名: t_role 角色表 并插入如下数据 t_user 用户表 roleId关联角色表 t_permission 权限表 roleId关联角色表 ...
- 本篇博客讲解: 自动增长列、字段值唯一性约束、存储过程、区分大小写的查询! 自动增长列、字段值唯一性约束 create table aa( id int auto_increment primary key, sname varchar(32) unique ); insert into aa values(5,'abc'); 123456 创建一个自动增长的i... 本篇博客讲解: 自动增长列、字段值唯一性约束、存储过程、区分大小写的查询! 自动增长列、字段值唯一性约束 create table aa( id int auto_increment primary key, sname varchar(32) unique ); insert into aa values(5,'abc'); 123456 创建一个自动增长的i...
- 问题概述: 之前本系列博客写的,全部都是一个connection对象,不知道大家发现没有,我们既然做了一个Connection工具类,那么大家肯定都是从那里面拿Connection对象的,之前的如果是多线程运行,很容易出问题的,你想想事务处理就知道了,同时用事务处理操作同一个Connection,肯定会出问题的。 例如: 一方的事务在提交的时候,你正好运行了一个事... 问题概述: 之前本系列博客写的,全部都是一个connection对象,不知道大家发现没有,我们既然做了一个Connection工具类,那么大家肯定都是从那里面拿Connection对象的,之前的如果是多线程运行,很容易出问题的,你想想事务处理就知道了,同时用事务处理操作同一个Connection,肯定会出问题的。 例如: 一方的事务在提交的时候,你正好运行了一个事...
上滑加载中
推荐直播
-
华为云码道-AI时代应用开发利器2026/03/18 周三 19:00-20:00
童得力,华为云开发者生态运营总监/姚圣伟,华为云HCDE开发者专家
本次直播由华为专家带你实战应用开发,看华为云码道(CodeArts)代码智能体如何在AI时代让你的创意应用快速落地。更有华为云HCDE开发者专家带你用码道玩转JiuwenClaw,让小艺成为你的AI助理。
回顾中 -
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中 -
码道新技能,AI 新生产力——从自动视频生成到开源项目解析2026/04/08 周三 19:00-21:00
童得力-华为云开发者生态运营总监/何文强-无人机企业AI提效负责人
本次华为云码道 Skill 实战活动,聚焦两大 AI 开发场景:通过实战教学,带你打造 AI 编程自动生成视频 Skill,并实现对 GitHub 热门开源项目的智能知识抽取,手把手掌握 Skill 开发全流程,用 AI 提升研发效率与内容生产力。
回顾中
热门标签