刚接手一个旧项目,个业务是从 Excle 读取数据插入数据库,读取 Excle 数据的方法已经实现了,返回的是 List<Map<String, String>>类型,数据与 mysql 表是一一对应的,我能直接定义一个数据表的 mapper.xml 将数据 insert 到 Mysql 吗,现在的问题是表结构字段类型存在 int 、float 、datatime 等类型,直接 insert 会不会自动转换到 int 类型( Mysql )?当然更好的做法是先转成 List<Bean>再插入,我只是想偷个懒。
1 dcsuibian 2022-12-21 09:33:33 +08:00 via Android ![]() Map 一时爽,重构火葬场 |
![]() | 2 MIUIOS 2022-12-21 09:37:02 +08:00 你只管传 map 就好了,剩下的交给后人去处理 |
3 golangLover 2022-12-21 09:38:04 +08:00 via Android 能上来写这么多的字的功夫,都够你把这 bean 写好了。 |
![]() | 4 7911364440 2022-12-21 09:38:56 +08:00 屎山就是这么堆出来的 |
![]() | 5 ubuntuGary OP @dcsuibian 这个旧项目已经是屎山了,全是传 Map 的 |
![]() | 6 ubuntuGary OP @totoro52 我现在就是前人的后人了 |
![]() | 7 potatowish 2022-12-21 09:5:16 +08:00 via iPhone 和传入参数类型无关,MyBatis 只是组装成 sql 然后提交到数据库,数值类型参数作为字符串传入 mysql 会自动转换到字段对应的类型 |
8 kaf 2022-12-21 10:19:03 +08:00 可以 |
![]() | 9 ljsh093 2022-12-21 10:29:43 +08:00 是不是可以先做下 Map->DO 的转换?当然是有时间完整测试的情况下。不然还是不要动前人的屎山了。 |
![]() | 10 w292614191 2022-12-21 11:22:17 +08:00 额,借楼问个事情,Mybatis ,List<Map<String, Object>> 如果 sql 返回了 clob 就会报错,有什么解决方案吗? |
![]() | 11 ianEros 2022-12-21 14:13:25 +08:00 后来有一天这个 excel 和表加了个字段 |
![]() | 12 tramm 2022-12-21 14:26:59 +08:00 beanutil 把 map 转 pojo 吧 |
13 dorothyREN 2022-12-21 14:54:49 +08:00 @ianEros #11 加个字段可能问题不是很大, 但要是哪天删了个字段。。。。 |
14 fengpan567 2022-12-27 14:57:24 +08:00 可以 |