Springboot 響應問題解析

2022-09-24 02:09:08 字數 835 閱讀 5706

1、當springboot引用 jackson-dataformat-xml的時候,使用@responsebody ,想返回乙個json的時候,會發現返回的是乙個xml格式的resp;

com.fasterxml.jackson.dataformat

jackson-dataformat-xml

解決方案:

①在對映中設定返回型別: application/json;如:

@postmapping(value = "add",produces ="application/json;charset=utf-8" )

@responsebody②url後面加上返回型別即可,如:你要訪問的是http://localhost:8080/hello

改為:http://localhost:8080/hello.json

2、當springboot需要使用poi操作匯出excel的時候,返回的引數設定:

hssfworkbook workbook = null ;

。。。resp.setcontenttype("application/octet-stream");

//預設excel名稱

resp.setheader("content-disposition", "attachment;filename=createlist.xls");

resp.flushbuffer();

workbook.write(resp.getoutputstream());若是需要中文文預設的名字,可以通過下面的這個轉換就可以了,不然會出現亂碼

new string ("你好.xls".getbytes("utf8"),"iso-8859-1");

springBoot 效能優化 非同步響應

業務開發中,有很多場景會有比較耗時的操作 比如需要呼叫第三方介面查詢資料 發郵件等 都有可能需要1秒以上的時間 如果按照傳統的方式處理,即是執行緒阻塞1秒以上的時間去等待結果,再把結果返回給使用者 而且處理請求的執行緒池中線程數總是有限的,如果執行緒都阻塞在等待中,後續的請求只能排隊等候 這也就影響...

SpringBoot 跨域請求問題解決

問題呈現 在使用ajax向出於安全原因,瀏覽器禁止對駐留在當前源之外的資源進行ajax呼叫。跨源資源共享 cors 是大多數瀏覽器實現的w3c規範,允許您以靈活的方式指定授權的跨域請求型別,而不是使用iframe或jsonp等安全性較低且功能較弱的方式。問題解決 最開始,在對應controller類...

SpringMVC 請求 響應亂碼問題解決方案

get請求引數是通過請求行中的url傳送給web伺服器 tomcat 的。tomcat伺服器會對url進行編碼操作 此時使用的是tomcat設定的字符集,預設是iso8859 1 到了我們的應用程式中的請求引數,已經是被tomcat使用iso8859 1字符集進行編碼之後的了。修改tomcat配置檔...