मेरी स्प्रिंग डाटा परियोजना में मैं एक निम्न इकाई है:स्प्रिंग डाटा - या भंडार विधि नाम पर हालत
@Entity
@NamedEntityGraph(name = "graph.CardPair", attributeNodes = {})
@Table(name = "card_pairs")
public class CardPair extends BaseEntity implements Serializable {
private static final long serialVersionUID = 7571004010972840728L;
@Id
@SequenceGenerator(name = "card_pairs_id_seq", sequenceName = "card_pairs_id_seq", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.AUTO, generator = "card_pairs_id_seq")
private Long id;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "card1_id")
private Card card1;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "card2_id")
private Card card2;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "selected_card_id")
private Card selectedCard;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "board_id")
private Board board;
....
}
मैं एक स्प्रिंग डाटा रिपोजिटरी विधि पर cardPairId
आधारित एक CardPair
के लिए दिखेगा लागू करने की आवश्यकता, board
और card
। मेरे लिए अधिक जटिल मामला Card
है क्योंकि मुझे ऐसी स्थिति बनाने की आवश्यकता है जहां card1 = card or card2 = card
क्या यह स्थिति स्प्रिंग डेटा रिपॉजिटरी विधि नाम के माध्यम से प्रदान करना संभव है?
उदाहरण
cardPairRepository.findByIdAndBoardAnd[card1 = card or card2 = card]AndSelectedCardIsNull(cardPairId, board, card);
के लिए यह एक विधि नाम पर इस हालत card1 = card or card2 = card
अनुवाद करने के लिए संभव है?
तुम सिर्फ की तलाश में हैं यहां एक विधि का नाम है? –
हां, मैं इस विधि का नाम किसी निर्दिष्ट स्थिति के साथ नहीं बना सकता – alexanoid
जटिल उपयोग मामलों के लिए केवल खोजकर्ता विधियों का उपयोग करें, जटिल मामलों के लिए एक प्रश्न लिखें और '@ क्वेरी' एनोटेशन का उपयोग करें। –