我有一个user_id(用于User域),并且想要保存引用该User的另一个域的新实例,而无需获取User实例。这可能吗?我试过了:
User user = User.load(user_id)
new Action(user: user, foo: "bar").save()
这将获取用户。我也尝试过:
User user = new User(id: user_id)
new Action(user: user, foo: "bar").save()
这也可以获取用户。
出于性能原因,我需要这样做,如果可以避免的话,不想使用JDBC插入行。我正在使用Grails 3.0.1。
最佳答案
这是ORM的阴暗面,如果不绕过GORM,您将无法做到这一点。 ORM只知道对象和类。表,列和其他数据库资料不在ORM的词典中。另一个选择是为此创建一个服务,并在此服务中使用POGO(POJO的常规版本)与数据库进行交互。
关于hibernate - 是否可以在不获取引用域的情况下保存新的Grails域实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31293564/