分享一个很好玩的需求。这个需求需要我们通过Excel来构建,生成对应的表结构SQL。针对于语言的选择,我能保证自己精通for循环,精通while循环,但那并不是我最适合我的语言。所以我干脆用java实现。
Java我做到了两种方式:
第一种方式是通过前台后台的联调,第二种是通过批处理脚本传参,并执行我相应的jar包。两种方式我都实现了,然后稍后一起看一下成果。
首先我们来创建两张SQL表结构。第一张名叫text测试表,另一张叫serious。认真的表列的字段不多,然后绑定主键。首先我们看看前段是如何实现的。
第一步肯定是通过上传文件来获取当前文件的IO,然后去解析调取我们的后台接口。后台接口遍历我们的sheet,并逐一遍历表的行便利列。所以这里的效率非常低。因为表正常的表来说,表结构数量级很大,而且一张sheet的表模型很多。这里我始终也没有去想好怎么去优化处理,所以干脆写了三层循环。
第一层遍历sheet,第二层遍历我们的Row,然后循环里逐一合成表名及结构。因为数据过于庞多,但是好在参数返回的却极其单一,只有一层字符串。所以这里我选择调用接口去调取全部的数据。
那么批处理是如何实现并使用脚本传餐给我们的jar包?只需加上这么一句话绑。为了避免数据量过于庞大,导致我的CMD容纳不下。这里添加了IO把SQL写出来。虽然需求是实现了但是仍然很多bug,我的技术也不是很厉害,所以选择用死循环去解析Excel。希望有厉害的前辈们能在评论区给出优化方案,让我去学习一下。
