T-A-N 2014-11-06 08:54 采纳率: 0%
浏览 948

springmvc对象保存存在多对一关系怎么解决

有1个Officialdoc类,Officialdoc类有些字段是外键!
Controller里传入的是Officialdoc对象,保存的时候那个主外键关系怎么处理?

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-03 01:41
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    这个问题可以通过使用Spring Data JPA和Hibernate来解决。以下是一个简单的示例:

    首先,在你的Officialdoc类中添加一个外键字段。

    @Entity
    public class Officialdoc {
    
        @Id
        private Long id;
    
        // 其他字段...
    
        @ManyToOne(fetch = FetchType.LAZY)
        @JoinColumn(name = "official_id")
        private Official official;
    }
    

    然后,在Controller中,你可以像这样操作:

    @Controller
    @RequestMapping("/api/officials")
    public class OfficialController {
    
        @Autowired
        private OfficialService officialService;
    
        @GetMapping("/{id}")
        public ResponseEntity<Officialdoc> getOfficialById(@PathVariable("id") Long id) {
            Optional<Officialdoc> optionalOfficialDoc = officialService.getOfficialByOfficialId(id);
            return new ResponseEntity<>(optionalOfficialDoc.orElse(null), HttpStatus.OK);
        }
        
        @PostMapping()
        public ResponseEntity<Officialdoc> saveOfficial(@RequestBody Officialdoc official) {
            Official doc = officialService.save(official);
            return new ResponseEntity<>(doc, HttpStatus.CREATED);
        }
    }
    

    在上面的代码中,我们使用了@RequestMapping注解来指定请求的路径。对于getOfficialById方法,我们使用了Optional来处理可能不存在的记录。对于saveOfficial方法,我们直接调用save方法来保存数据,并返回新的官方文档实体。

    注意:以上代码只是一个基本的示例,实际应用中你可能还需要考虑其他因素,比如事务管理、缓存等。

    评论

报告相同问题?