1

テーブルのすべての列を更新するのではなく、データベース テーブルで更新したい列だけを制限するにはどうすればよいですか?

以下、備考欄のみ更新

@Test
    public void updateProject() {
        try {
            Project project = new Project();
            project.setProjectId(234L);
            project.setRemarks("from junit");
            projectService.update(project);
        } catch (Exception e) {
            System.out.println("error" + e.getMessage());
            e.printStackTrace();
        }
    }

上記を実行すると、テーブル内の他のすべての列が更新され、その結果、他のすべての列の値が null になります。

この問題を解決するにはどうすればよいですか?

DAOImpl コード

@Override
    public void update(project project) {    
        entityManager.merge(project);
        entityManager.flush();      
    }

更新 1変更されたコード

@Test
    public void updateProject() {
        try {
            Project project = new Project();
            project = projectService.load(234L);            
            project.setRemarks("from junit");
            projectService.update(project);
        } catch (Exception e) {
            System.out.println("error" + e.getMessage());
            e.printStackTrace();
        }
    }
4

1 に答える 1