hibernate里的一对多映射中是否必须设置set?
set集合是必须要的配置还是可选的?如果删除set映射的话在相应的pojo文件中是否要保留set集合,或者说在pojo中删除set属性的话是否也要在配置文件中删除对应的s...
set集合是必须要的配置还是可选的?如果删除set映射的话在相应的pojo文件中是否要保留set集合,或者说在pojo中删除set属性的话是否也要在配置文件中删除对应的set配置呢?
我的项目中基本上不会用到集合,比方说我有一个网吧表其中有个外键是引用的地区表的主键,地区表和网吧表就是一个一对多的关系,但是我的地区表中的东西是一次性建好的后期不会发生变化,也不需要添加删除操作,如果在地区表里和pojo中设置set有点多余 展开
我的项目中基本上不会用到集合,比方说我有一个网吧表其中有个外键是引用的地区表的主键,地区表和网吧表就是一个一对多的关系,但是我的地区表中的东西是一次性建好的后期不会发生变化,也不需要添加删除操作,如果在地区表里和pojo中设置set有点多余 展开
3个回答
展开全部
当然不是必须的,看你有用没用,如果没用的话就删掉.
映射中有的话bean中必须有,映射没有的话bean中可有可无
如果你hibernate配置不熟最好不要用set映射,很可能影响你的性能,举个例子:
一个学生对应他选的课程set
你要搜索所有学生
假如有100个学生
就会生成101个sql语句(一条搜所有学生,每个学生都生成一个搜索课程的sql)
所以要用set映射的话就得打开延迟加载,而延迟加载又得考虑事务性,所以还是不用的好
映射中有的话bean中必须有,映射没有的话bean中可有可无
如果你hibernate配置不熟最好不要用set映射,很可能影响你的性能,举个例子:
一个学生对应他选的课程set
你要搜索所有学生
假如有100个学生
就会生成101个sql语句(一条搜所有学生,每个学生都生成一个搜索课程的sql)
所以要用set映射的话就得打开延迟加载,而延迟加载又得考虑事务性,所以还是不用的好
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一对多必须要set的,你不配置set,hibernate怎么知道是一对多,要么你手动
保存的时候一对多
保存的时候一对多
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询