私はスプリングブート、スプリングデータjpaで作業しています。レコードを取得し、レコードの状態を更新するようなシナリオがあります。スプリングデータjpaレコードを更新しない
Project updateProject =null;
private void changeStatusOfProject(Integer projectId, String statusJobSchedule) {
logger.info("changeStatusOfProject "+STATUS + statusJobSchedule);
Project p =projectDao.findOne(pid);
updateProject = new Project();
updateProject.setProjectId(p.getProjectId());
updateProject.setPText(p.getPText());
updateProject.setEcommDisplayFlag(p.getEcommDisplayFlag());
updateProject.setUpdatedDate(new Date());
updateProject.setUpdatedBy("Chandu");
logger.info("p id : " +p.getpID());
if (statusJobSchedule.equalsIgnoreCase("Completed")) {
updateProject.setActive("N");
} else {
updateProject.setActive("Y");
}
updateProject.setExecutionStatus(statusJobSchedule);
projectDao.save(updateProject);
}
例外はありません。
トレイル2:
projectDaoは、私はしばらく前に同様の問題を持っていたし、それがキャッシュされていたので、私にとってはそれがあったjparepositarty
private void changeStatusOfProject(Integer projectId, String statusJobSchedule) {
logger.info("changeStatusOfProject "+STATUS + statusJobSchedule);
Project project =projectDao.findOne(projectId);
if (statusJobSchedule.equalsIgnoreCase("Completed")) {
project.setActive("N");
} else {
project.setActive("Y");
}
question.setExecutionStatus(statusJobSchedule);
questionBankDao.save(project);
}
にしようとしないだろうか?次に、アクティブなJPAオブジェクトはupdateProjectではなくpです。新しいプロジェクトオブジェクトを作成しようとしているときにプライマリキーの制約が失われている可能性があります。 – farrellmr
「例外が発生していません」というメッセージが表示されます。また、 'updateProject'が何であるのか、それがなぜメソッド内にないのか説明できますか?それはフィールドですか?そして 'projectDao'とは何ですか?これ以上の情報がなければ、この質問に答えることはできません。 – g00glen00b
あなたの正確な質問は何ですか? @ g00glen00bがもっと情報なしで言ったように、この質問に答えることはできません – jai