0
我将图像存储在文件系统中并更新数据库中的图像路径。如何使用休眠功能在数据库中交换ID
表结构
photo_id,USER_ID,photo_no,PHOTO_URL
用户可以上传最多5张照片。 photo_no是我存储订单的字段。第一张照片将永远是主要照片。但用户可以将任何照片作为主要照片,并且他们也可以安排照片。
如果用户想将第三张照片制作为主要照片(photo_no 1)。然后,我必须将photo_no 3更新为一些虚拟临时号码,并用3更新photo_no 1,并用1更新临时号码。这样我可以交换照片。但我认为这不是一个好方法。任何人都可以提出一个好的方法来做到这一点
是否可以通过良好的桌面设计来处理这种情况?
谢谢。照片订单不会保持不变,但我可以引入新的专栏并维护订单。 1,3 | 2,1 | 3,3 | 4,5 | 5,5(照片,顺序) - 第二张照片是主照片。但不知道如果更改表,如果有些更改顺序。 – user3909315
如果你真的需要交换两张照片的photo_no,那么你的桌子设计就足够了。 您可以使用Hibernate以编程方式交换订单号。 我不确定你的持久层是怎么样的,但你可以这样做: 'mainPhoto.setPhotoNo(futureMainPhoto.getPhotoNo()); futureMainPhoto.setPhotoNo(1); entityManager.pesist(mainPhoto); entityManager.pesist(futureMainPhoto);' – Milan