java - 我可以使用 EntityManager 生成 .sql 文件而不是写入数据库吗?

标签 java sql entitymanager

我正在使用 EntityManager 将大量新条目写入数据库。现在,数据库管理员问我是否可以给他一个包含所有更改的 .sql 文件,而不是直接访问数据库。是否可以在不手动创建所有 sql 语句的情况下实现?

最佳答案

我认为没有一个内置函数可以将 sql 语句重定向到文件而不是将其发送到数据库。您可以使用像 P6Spy 这样的数据库日志记录和拦截框架,并使用 slf4j 或类似于使用文件附加程序的文件来记录实际的 sql 语句。只需回滚原来负责执行实际数据库工作的事务即可,这样最终数据就不会被插入两次。

也许这不是最好的解决方案,但根据所提供的信息,它可能是一个不错的解决方案。

关于java - 我可以使用 EntityManager 生成 .sql 文件而不是写入数据库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25022786/

相关文章:

sql - 在 FROM 子句中创建一个大的虚拟表

java - 试图在数据库中找到一个实体

java - 数组循环性能中哪一个更快?

java - 为什么我的 "Set-Cookie"响应 header 没有被翻译成实际的 cookie?

mysql - 在文件名sql表达式上将字符与日期分开

java - EntityManager.getResultList() 性能缓慢

java - 如何在不修改 DAO 类的情况下指定使用哪个实体管理器工厂?

java - JPA 持久性和 Hibernate javassist 对象

java - Spring-ws 或 Axis2 或其他用于 WS 的 "Contract-First"方法

sql - 转置字符串