# Mybatis操作Mysql json
**Repository Path**: luhongliang666/mybatis_operation_mysql_json
## Basic Information
- **Project Name**: Mybatis操作Mysql json
- **Description**: tk_mybatis 操作mysql json字段类型
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 7
- **Forks**: 1
- **Created**: 2020-05-13
- **Last Updated**: 2024-04-29
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Mybatis操作Mysql json
#### 介绍
tk_mybatis :简化sql语句的编写,甚至达到无mapper.xml文件。
Json字段是从mysql 5.7起加进来的全新的字段类型
mybatis默认不支持json类型数据
所以引用了extcol工具 来处理java与mysql json类型数据交换工具
#### 软件架构
软件架构说明
springboot + tkmybatis + extcol
#### 安装教程
1. 克隆好项目放到idea 运行即可
2. 如需自己整合可以参考 下面参考文献
3. extcol工具pom
```
com.github.jeffreyning
extcol
0.0.1-RELEASE
```
配置文件中添加 type-handlers-package: com.nh.micro.ext.th
```
# mybatis配置
mybatis.typeAliasesPackage=com.tk.demo.po
mybatis.mapperLocations=classpath:com/tk/demo/mapper/*.xml
mybatis.type-handlers-package= com.nh.micro.ext.th
```
需要存为json的属性在java中对应的字段类型


mapper.xml 中的标签下该字段的result标签也需要加typehandler

还需要重写tk_mybatis中提供通用方法

xml中同理
```
insert into payment(id,serial,prof_info)
values (#{id},#{serial},#{profInfo})
```
#### 使用说明
1. 克隆好项目后 配置jdbc等信息
2. 启动主启动类 `DemoApplication`
3. 执行插入方法 (`http://localhost:8080/save`)
postman运行结果如图


4.执行查询方法(`http://localhost:8080/selectOne`)postman运行结果如图

**参考文献:**
`https://blog.csdn.net/fakerswe/article/details/80910035`
`https://blog.csdn.net/chidi5109/article/details/100599086?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2.nonecase`