これは私のコントローラークラスで、新しいウィンドウと編集ウィンドウがあります。新しいウィンドウに 6 つのフィールドがあるとします。すべての値を入力して保存ボタンをクリックすると、値がデータベースに保存されます。編集ウィンドウには、これらの 6 つのフィールドのうち 4 つのフィールドがあり、これらの 4 つのフィールドを編集したいだけですが、これらの4つのフィールドを編集すると、null値を取得する他のフィールドは、編集したくないフィールドを意味し、それらはnull値で埋められ、以前の値はnull値で上書きされます
@RequestMapping("/newbin")
public String showNewBinForm(Model model) {
Bin bin=new Bin();
model.addAttribute("bin",bin);
List<Warehouse> warehouseDetails= wservice.listAll();
model.addAttribute("warehouseDetails",warehouseDetails);
return "new_bin";
}
@RequestMapping(value = "/savebin", method = RequestMethod.POST)
public String saveBin(@ModelAttribute("bin") Bin bin) {
service.save(bin);
return "redirect:binwindow";
}
@RequestMapping("/editbin/{id}")
public String showEditBinPage(@PathVariable(name = "id") Long id,Model model) {
Bin bin = service.get(id);
model.addAttribute("bin", bin);
return "edit_bin";
}
サービス-
[public class BinService {
@Autowired
private BinRepository repo;
public List<Bin> listAll() {
return repo.findAll();
}
public void save(Bin bin) {
repo.save(bin);
}
public Bin get(long id) {
return repo.findById(id).get();
}