# 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中对应的字段类型 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0513/154430_1ce79dad_4971172.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2020/0513/154510_2f719538_4971172.png "屏幕截图.png") mapper.xml 中的标签下该字段的result标签也需要加typehandler ![输入图片说明](https://images.gitee.com/uploads/images/2020/0513/154743_ca663083_4971172.png "屏幕截图.png") 还需要重写tk_mybatis中提供通用方法 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0513/155207_a1316e18_4971172.png "屏幕截图.png") xml中同理 ``` insert into payment(id,serial,prof_info) values (#{id},#{serial},#{profInfo}) ``` #### 使用说明 1. 克隆好项目后 配置jdbc等信息 2. 启动主启动类 `DemoApplication` 3. 执行插入方法 (`http://localhost:8080/save`) postman运行结果如图 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0513/145913_83eba435_4971172.png "屏幕截图.png") ![输入图片说明](https://images.gitee.com/uploads/images/2020/0513/145942_9ba7670f_4971172.png "屏幕截图.png") 4.执行查询方法(`http://localhost:8080/selectOne`)postman运行结果如图 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0513/150219_b6657ecb_4971172.png "屏幕截图.png") **参考文献:** `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`