key: MySQL版本为8时,注意设置时区
-
使用第三方组件:导入依赖,配置依赖,编写具体代码,研究扩展;
-
步骤:
-
创建数据库,表;
-
初始化项目,使用SpringBoot;
-
导入依赖;
-
连接数据库;
-
-
注解:
-
在Mapper上实现基本接口(Interface)即可,一般继承于BaseMapper;
-
@MapperScan("com.xxx.mapper") :用于扫描mapper包下的所有接口;
-
@Repository,代表是Dao层的;
-
@SpringBootApplication
-
2 配置日志
key: 开发时,使得SQL运行可见,上线后去掉
放在resources下.
3 插入测试与主键生成策略
key: 注意时间自动生成
-
测试方法:加一个@Test注解即可单独运行,即单元测试;
-
主键生成策略:
-
雪花算法:snowflake,结果是一个long型的ID。使用41bit作为毫秒数,10bit作为机器的ID(5个bit是数据中心,5个bit的机器ID),12bit作为毫秒内的流水号(意味着每个节点在每毫秒可以产生 4096 个 ID),最后还有一个符号位,永远是0。具体实现的代码可以参看https://github.com/twitter/snowflake。雪花算法支持的TPS(系统吞吐量)可以达到419万左右(2^22*1000);
-
其他的:
-
自动:AUTO;手动:INOUT;
-
4 基本操作
-
使用map可以使查询更简单;
-
分页查询:使用标配插件,使用拦截器配置
5 条件构造器Wrapper
-
类比mapper,支持链式编程:
-
实现复杂查询;
-
代码分析:
第一行new一个wrapper对象,第二行进行方法调用(分组升序查询),第三行使用List对象承接,第四行输出展示;