अद्यतन करें spring-data-jpa repository.save
केवल update
करें लेकिन प्राथमिक कुंजी नहीं मिलने पर नया निर्माण न करें।
वर्तमान में, repository.save() मेरी डेटाबेस में एक अब रिकॉर्ड बनाएगा अगर नहीं मिलाकैसे वसंत डेटा jpa repository.save केवल
5
A
उत्तर
12
Repository.save()
सम्मिलित रूप में अच्छी तरह के रूप में अद्यतन के लिए एक दोहरी purposed विधि है
दो द्वारा इस्तेमाल किया तंत्र रहे हैं वसंत तय करने के लिए अगर यह एक इकाई पर सम्मिलित या अद्यतन का उपयोग करना चाहिए:
- डिफ़ॉल्ट रूप से, स्प्रिंग इकाई आईडी-प्रॉपर्टी (
@Id
) इकाई का निरीक्षण करती है, यह पता लगाने के लिए कि इकाई नई है या नहीं। यदि पहचानकर्ता संपत्ति शून्य है, तो इकाई को नया माना जाता है, अन्यथा नया नहीं। - इसका बेहतर नियंत्रण लेने का एक और तरीका
Persistable
लागू करना है।Persistable
को लागू करने वाली इकाइयों के लिए, वसंतisNew(…)
विधि को यह पता लगाने के लिए कॉल करेगा कि यह या अपडेट किया गया है।
1
@ManishMheshwari का मतलब Repository.findeOne (Id) था। मैं इस मामले में हम पथ से मौजूदा ईद मूल्य मिल रहा है और .findOne में इसे पारित कर रहे हैं()
@RequestMapping(value = "/recipes/{id}/edit", method = RequestMethod.POST)
public String saveEditedRecipe(@PathVariable("id") Long id){
Recipe recipe = recipes.findOne(id);
//do anything you want
recipes.save(recipe);
return "redirect:/recipes/" + recipe.getId();
}
: यहाँ एक नियंत्रक का एक उदाहरण है। इस तरह हम सही आईडी के साथ नुस्खा प्राप्त कर रहे हैं जिसे हम अपडेट करना चाहते हैं। फिर आप अतिरिक्त तर्क या बस .save() कर सकते हैं। इस दृष्टिकोण का उपयोग करके यह उस आईडी के साथ इकाई को अपडेट करेगा जिसे आपने निश्चित रूप से पारित किया था।
संबंधित मुद्दे
- 1. वसंत डेटा jpa
- 2. वसंत jpa application.properties useSSL
- 3. वसंत डेटा बाकी बनाम वसंत डेटा जेपीए
- 4. jpa
- 5. वसंत-डेटा-जेपीए
- 6. वसंत डेटा जेपीए
- 7. कैसे वसंत डेटा
- 8. वसंत डेटा CrudRepository मौजूद है
- 9. वसंत डेटा
- 10. वसंत-डेटा
- 11. वसंत-डेटा-जेपीए
- 12. वसंत डेटा
- 13. वसंत जेपीए डेटा "या" क्वेरी
- 14. वसंत डेटा रिपोजिटरी ऑटोवॉयरिंग
- 15. वसंत-डेटा-आराम
- 16. JPA और डेकोरेटर पैटर्न
- 17. वसंत-डेटा-आराम
- 18. वसंत-डेटा-मोंगोड
- 19. वसंत डेटा elasticsearch
- 20. jpa और hibernate
- 21. querydsl-jpa/querydsl-sql
- 22. जब JPA और हाइबरनेट
- 23. वसंत डेटा जेपीए java.lang.IleglegalArgumentException: एक इकाई नहीं
- 24. वसंत-डेटा-आराम
- 25. EntityManager JPA EclipseLink
- 26. JPA और डीएओ कार्यान्वयन
- 27. वसंत
- 28. वसंत-डेटा-नियो 4j स्टैंडअलोन वसंत परियोजना
- 29. क्या वसंत डेटा जेपीए एक जेपीए कार्यान्वयन है?
- 30. वसंत डेटा आरईएसटी
क्या आप मुझे बता सकते हैं कि इसे कैसे कार्यान्वित किया जाए? – Awakening
आप क्या लागू करने के लिए देख रहे हैं? 'save()' ऑपरेशन स्प्रिंग डेटा जेपीए ढांचे द्वारा कार्यान्वित किया जाता है। –
मेरा मतलब है कि 'सेव' ऑपरेशन केवल अपडेट करें, लेकिन – Awakening