स्प्रिंग डेटा प्रोजेक्ट में क्रूड रिपोजिटरी प्रबंधित किए जा रहे इकाई वर्ग के लिए परिष्कृत सीआरयूडी कार्यक्षमता प्रदान करता है।इसका मतलब क्या है <S extends T> सहेजें (एस इकाई); वसंत रिपोजिटरी में?
public interface CrudRepository<T, ID extends Serializable>
extends Repository<T, ID> {
<S extends T> S save(S entity);
T findOne(ID primaryKey);
Iterable<T> findAll();
Long count();
void delete(T entity);
boolean exists(ID primaryKey);
// … more functionality omitted.
}
सामान्य तौर पर, मुझे पता है कि "एस फैली टी" का अर्थ है, यानी कि एस, आपरेशन बचाने की वापसी प्रकार, टी के उप प्रकार क्यों यह बाधा के रूप में इस तरह के जोड़ने के लिए आवश्यक है होना चाहिए? मुझे लगता है कि इस तरह से ठीक कर कुछ होगा:
T save (T entity);
void delete(T entity);
में जैसा कि मैंने अधिक सहायता प्राप्त करने googled है और मैं निम्नलिखित stackoverflow पर ही सवाल समझ गए होंगे लेकिन यह नहीं ' टी मेरे लिए वास्तव में स्पष्ट:
Spring CrudRepository: why to invent a new generic type S
धन्यवाद।
मुझे लगता है कि आप सही हैं। 'एस' अनावश्यक है, और हस्ताक्षर डिजाइन एक गलती है। – ZhongYu