用户和角色是多对多的关系,有一张中间表user_group,然后我想插入一个user的时候自动给此user赋一个默认的role,但是我每次这样调用的时候user.getGroups().add(defaultGroup);
session.save(user);
hibernate会把defaultGroup又在数据库更新一次,但是换句话说,hibernate又怎么会知道数据库里有没有defaultGroup这条数据呢,所以去更新好像又在所难免,真是纠结
下面是hibernate生成的sql语句
Hibernate:
select
hibernate_sequence.nextval
from
dual
Hibernate:
insert
into
users
(avatar, create_time, email, gender, interests, last_visit_time, password, user_name, user_id)
values
(?, ?, ?, ?, ?, ?, ?, ?, ?)
Hibernate:
update
UserGroup
set
create_time=?,
group_name=?,
last_modify_time=?
where
usergroup_id=?
Hibernate:
insert
into
user_group
(user_id, usergroup_id)
values
(?, ?)
session.save(user);
hibernate会把defaultGroup又在数据库更新一次,但是换句话说,hibernate又怎么会知道数据库里有没有defaultGroup这条数据呢,所以去更新好像又在所难免,真是纠结
下面是hibernate生成的sql语句
Hibernate:
select
hibernate_sequence.nextval
from
dual
Hibernate:
insert
into
users
(avatar, create_time, email, gender, interests, last_visit_time, password, user_name, user_id)
values
(?, ?, ?, ?, ?, ?, ?, ?, ?)
Hibernate:
update
UserGroup
set
create_time=?,
group_name=?,
last_modify_time=?
where
usergroup_id=?
Hibernate:
insert
into
user_group
(user_id, usergroup_id)
values
(?, ?)
本文探讨了Hibernate框架中用户与角色的多对多关系处理方法,特别是在插入新用户时如何自动分配默认角色,并讨论了相关数据库操作及可能产生的更新问题。
1751

被折叠的 条评论
为什么被折叠?



