国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

java - 如何在Comparator類中autowire一個接口

瀏覽:74日期:2023-10-22 16:02:12

問題描述

使用springboot,和mongo的repository,我定義了一個Comparator類,想實現自己的對象的比較方法。代碼如下:

package com.story.utils;import java.util.Comparator;import javax.annotation.Resource;import org.springframework.stereotype.Service;import com.story.model.Phase;import com.story.model.Story;import com.story.repository.StoryRepository;@Servicepublic class PhaseComparator implements Comparator<Phase>{private String field;private Story story;@Autowired private StoryRepository storyRepository; public PhaseComparator() {super(); } public PhaseComparator (String field) {this.field = field; } @Override public int compare(Phase phase_1, Phase phase_2) {if (this.field.equals('createdDate')) { return phase_1.getCreatedDate() < phase_2.getCreatedDate() ? -1 : 1;} else { Story foundStory_1 = this.storyRepository.findOne(phase_1.getStoryId()); Story foundStory_2 = this.storyRepository.findOne(phase_1.getStoryId()); return foundStory_1.getLastUpdatedDate() < foundStory_2.getLastUpdatedDate() ? -1 : 1;} }}

但是,這樣的話,storyRepository就是null。請問應該如何處理呢?謝謝

問題解答

回答1:

這樣寫應該沒問題,但是你用的時候必須從 Spring 上下文中去取,比如用 @Autowired 。不知道你是不是這么做的。如果你用的時候臨時再去 new PhaseComparator() ,那里面的 storyRepository 肯定是 null。

標簽: java
相關文章:
主站蜘蛛池模板: 奇米888四色在线精品 | 国产成人精品视频一区 | 精品国产亚一区二区三区 | 色久网 | 国产美女一区二区在线观看 | 新26uuu在线亚洲欧美 | a一级 | 久久久久网站 | 欧美国产91 | 精品国产免费久久久久久 | 国产一区二区三区欧美精品 | 97视频免费播放观看在线视频 | 欧美一级片在线免费观看 | 在线观看亚洲人成网站 | 国产一二三区在线 | 盗摄偷拍a在线观看 | 亚洲午夜久久久久影院 | 欧美一级毛片美99毛片 | 成人影院vs一区二区 | 婷婷丁香花麻豆 | 日本韩国一级 | 日韩美女在线视频 | 深夜福利视频在线看免费 | 久久国产视屏 | 国产精品久久国产精品99盘 | 国产91精品露脸国语对白 | 日韩精品一区二区三区在线观看 | 日本午夜vr影院新入口 | 国产成人深夜福利短视频99 | 成人网18免费软件大全 | 香蕉视频黄色在线观看 | 久久中文字幕久久久久 | 另类毛片 | 日韩中文字幕视频在线 | 免费国产一级特黄久久 | 久久精品国产一区二区三区不卡 | 午夜视频久久 | 欧美一级www毛片 | 久久爰www免费人成 久久曰视频 | 亚洲国产精品看片在线观看 | 91视频国产精品 |