目前想实现一个按月份写入数据库的功能,比如test_201801.sql test_201802.sql。由于jpa的save方法,会先写数据表的实体类与数据表的名字绑定,然后就可以实现。请问我想实现的功能如何在jpa的基础上修改呢
1条回答 默认 最新
- 爱码少年 00fly.online 2018-11-10 10:35关注
mysql的话,需要在jdbcurl 配置allowMultiQueries=true
然后读取test_201801.sql test_201802.sql执行。sql文件内容包含建表,插值语句
例子SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for user -- ---------------------------- DROP TABLE IF EXISTS `user`; CREATE TABLE `user` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFAULT NULL, `age` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; -- ---------------------------- -- Records of user -- ---------------------------- INSERT INTO `user` VALUES ('1', 'name_525', '48'); INSERT INTO `user` VALUES ('2', 'name_367', '33'); INSERT INTO `user` VALUES ('3', 'name_630', '23'); INSERT INTO `user` VALUES ('4', 'name_230', '34');
关键代码例子
try (InputStream inputStream = getClass().getResourceAsStream("/sql/test_201801.sql")) { String sqlText = IOUtils.toString(inputStream, "utf-8"); logger.info("SQL = {}", sqlText); em.createNativeQuery(sqlText).executeUpdate(); }
回答完毕!
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 R语言绘制生存曲线时出现警告:All aesthetics have length 1, but the data has 2 rows.
- ¥15 苍穹外卖拦截器token为null
- ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
- ¥20 wpf datagrid单元闪烁效果失灵
- ¥15 券商软件上市公司信息获取问题
- ¥100 ensp启动设备蓝屏,代码clock_watchdog_timeout
- ¥15 Android studio AVD启动不了
- ¥15 陆空双模式无人机怎么做
- ¥15 想咨询点问题,与算法转换,负荷预测,数字孪生有关
- ¥15 C#中的编译平台的区别影响