赞
踩
没错,一顿狂搜,不知道是不是打开方式不对,没找到相关的资料。
于是求人不如求己,自己思考。
以下是思考过程,如有不对,还望大佬们指点:
本项目是1对多的双向jpa外键约束问题。
1.在单端User类中,它不需要维护关系,所以就只上传除了自动增长的id的字段:
这样是没问题的,但是问题来了,维护关系的多端上传哪些字段,约束外键的字段又怎么上传呢?
2.在多端中:
我通过requestBody这样上传,先不管约束外键字段:
然后它给我报错说约束字段不能为null.
查看日志:
发现user_id不是我多端实体类的属性,它是单端的,如果直接在requestBody上加user_id:1肯定也是不行的。(试了试,结果还是为null)
于是我想,这个既然是约束,那么就应该先找到user_id的User类,先找出这个类后,多端不是有个单端的实体类的引用吗:
这个引用里面就包含了user_id这个外键。
既然这样,那我是不是可以根据id先找到对应的单端的实体类,然后由于多端有这个类的引用,即实例化多端的时候把这个引用给赋值,就相当于给了它一个约束外键user_id。
即想要的就是 user_id这个外键约束而已。
然后jpa的save()保存到数据库。
但是这个id是怎么传呢?前端的requestParam传过来就好了!
这个id的数据是可以前端直接保存到vuex中的,这样就避免每次获取接口去得到当前用户的id然后再携带上id给后端查询。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。