亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么在這個例子中使用了一個 Bean - 它看起來像是毫無意義的間接尋址?

為什么在這個例子中使用了一個 Bean - 它看起來像是毫無意義的間接尋址?

慕姐8265434 2023-04-26 14:05:04
在這個如何設置異步服務的示例中,出于某種原因,RestTemplate 以非常迂回的方式設置。為什么異步例程本身不能聲明一個新的 RestTemplate?@Servicepublic class AsyncService {    private static Logger log = LoggerFactory.getLogger(AsyncService.class);    @Autowired    private RestTemplate restTemplate;    @Bean    public RestTemplate restTemplate() {        return new RestTemplate();    }    @Async("asyncExecutor")    public CompletableFuture<EmployeeNames> getEmployeeName() throws InterruptedException    {        log.info("getEmployeeName starts");        EmployeeNames employeeNameData = restTemplate.getForObject("http://localhost:8080/name", EmployeeNames.class);        log.info("employeeNameData, {}", employeeNameData);        Thread.sleep(1000L);    //Intentional delay        log.info("employeeNameData completed");        return CompletableFuture.completedFuture(employeeNameData);    } //...
查看完整描述

1 回答

?
智慧大石

TA貢獻1946條經驗 獲得超3個贊

為什么異步例程本身不能聲明一個新的 RestTemplate?

顯然這里沒有價值。如果沒有在其他地方重用,
RestTemplate可以簡單地用操作符創建。如果我們想在其他地方重用 它,聲明它是有意義的。 它確實在另一個需要它的 bean 中提供了單例可注入/可重用。 但通常我們不會像這段代碼那樣在一個類中這樣做,而是在一個更全局的配置類中這樣做。 new
@Bean

@Service


查看完整回答
反對 回復 2023-04-26
  • 1 回答
  • 0 關注
  • 115 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號