JDBC连接数据库 JDBC连接数据库
JDBC 连接数据库 注册驱动Class.forName("com.mysql.jdbc.Driver"); 打开连接,通过DriverManager获取一个连接conn = DriverManager.get
2023-08-27
MyBatis源码解读 MyBatis源码解读
mybatis的核心模块 注解注入方式(入口)这里用的是Hikari连接,其它连接方式道理一样 @Bean(name = "dataSource") public DataSource dataSource() {
2023-08-27
手写MyBatis 手写MyBatis
Mybatis中的关键类 入口: SqlSessionFactoryBuild().build().openSqlSession().getMapper(BlogMapper.class); package com.hbatis.v2.s
2023-08-27
Redis安装 Redis安装
Linuxwget http://download.redis.io/releases/redis-2.8.17.tar.gz tar xzf redis-2.8.17.tar.gz cd redis
2023-08-27
Redis集群 Redis集群
主从复制redis 主从复制的核心原理 当启动一个 slave node 的时候,它会发送一个 PSYNC 命令给 master node。 如果这是 slave node 初次连接到 master node,那么会触发一次 full re
2023-08-27
Redis实现分布式锁 Redis实现分布式锁
Redis实现分布式锁Redis实现分布式锁利用 SETNX 和 SETEX 基本命令主要有: SETNX(SET If Not Exists): 当且仅当 Key 不存在时,则可以设置,否则不做任何动作。 当且仅当 key 不存在,将
2023-08-27
Redis数据类型 Redis数据类型
string使用 这是最基本的类型了,没啥可说的,就是普通的set和get,做简单的kv缓存 应用场景 redis锁 字符串记录 原理存储数据三种类型: int: 长度 1 num类型。set int_key "111&qu
2023-08-27
Redis应用场景 Redis应用场景
高性能假设这么个场景,你有个操作,一个请求过来,吭哧吭哧你各种乱七八糟操作mysql,半天查出来一个结果,耗时600ms。但是这个结果可能接下来几个小时都不会变了,或者变了也可以不用立即反馈给用户。那么此时咋办? 缓存啊,折腾600ms查出
2023-08-27
Redis的单线程模型 Redis的单线程模型
单线程模型为啥redis单线程模型也能效率这么高? 纯内存操作 核心是基于非阻塞的IO多路复用机制 单线程反而避免了多线程的频繁上下文切换问题 题外话: 我们现在要仔细的说一说I/O多路复用机制,因为这个说法实在是太通俗了,通俗到一般人
2023-08-27
8 / 23