【发布时间】:2019-03-25 08:37:21
【问题描述】:
考虑以下事件:-
- 创建用户 [id=1, name=Ram, city=Delhi, email=abc@gmail.com, phone=12345]
-
更新用户 [id=1, city=Mumbai, phone=56789]
对于 CREATE 操作,这是存储在数据库中的内容:-
[id=1, name=Ram, city=Delhi, email=abc@gmail.com, phone=12345]但是,当我执行 UPDATE 操作时,未更新的字段变为 null
[id=1, name=null, city=Mumbai, email=null, phone=56789]
现在,我的问题是如何防止姓名和电子邮件变为 NULL ??
这里是代码 sn-p :-
-
实体类:-
@Entity public class User { @Id private Integer id; private String name; private String city; private String email; private String phone; //Setters and Getters } -
存储库:-
import org.springframework.data.repository.CrudRepository; import com.therealdanvega.domain.User; public interface UserRepository extends CrudRepository<User, Integer>{ } -
应用类:-
@SpringBootApplication public class JsontodbApplication implements CommandLineRunner { @Autowired private UserRepository userRepo; public static void main(String[] args) { SpringApplication.run(JsontodbApplication.class, args); } @Override public void run(String... args) throws Exception { /* CREATE USER */ userRepo.save(createUser()); /* UPDATE USER */ userRepo.save(updateUser()); System.out.println(userRepo.findOne(1)); } public User createUser() { User user = new User(); user.setId(1); user.setName("Ram"); user.setCity("Delhi"); user.setEmail("abc@gmail.com"); user.setPhone("12345"); return user; } public User updateUser() { User user = new User(); user.setId(1); user.setCity("Mumbai"); user.setPhone("56789"); return user; } }
【问题讨论】:
标签: spring hibernate spring-boot spring-data-jpa