spring boot jpa的saveAndFlush更新或者插入實體的返回標誌

spring boot jpa的saveAndFlush更新或者插入實體的返回結果判斷

@Repository
public interface UserDao extends JpaRepository<User,Long> {

}

@Service
public class TestService {
    @Autowired
    UserDao userDao;
    public User insertUser() {
        User user = new User();
        user.setName("zzh12");
        user.setPassword("123");
        return  userDao.saveAndFlush(user);
    }
@Controller
public class TestController {
    @Autowired
    TestService userService;
    @RequestMapping("/hello")
    public String hello(){
       if (userService.insertUser().getId()!=0){
           return "hello";
       }
       return "error";
    }

插入失敗的話,可能是實體類的主鍵Id前忘記加自增長(數據庫用的Mysql)@GeneratedValue(strategy = GenerationType.IDENTITY)或@GeneratedValue(strategy = GenerationType.AUTO)

  @Id //主鍵
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(name = "name",nullable = false,unique = true)
    private String name;

    @Column(name = "password",nullable = false)
    private String password;

初學jpa,請多多指教!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章