0
使用Spring Web MVC,我想使用ResponseEntity將字節發送回客戶端。Spring Web MVC:如何在視圖類中使用ResponseEntity,而不是控制器?
例如,我可以這樣做:
@RequestMapping(value = "/getMyBytes", method = RequestMethod.GET)
public ResponseEntity<byte[]> handleGetMyBytesRequest()
{
// Get bytes from somewhere...
byte[] byteData = ....
HttpHeaders responseHeaders = new HttpHeaders();
responseHeaders.setContentType(MediaType.IMAGE_PNG);
responseHeaders.setContentLength(byteData.length);
return new ResponseEntity<byte[]>(byteData,
responseHeaders, HttpStatus.OK);
}
但現在控制器本身決定,該數據將如何呈現給客戶。這不應該成爲這個觀點的工作嗎?
所以我的問題是,當我有這種觀點類:
public class DemoView extends AbstractView
{
@Override
protected void renderMergedOutputModel(Map< String, Object > model,
HttpServletRequest request, HttpServletResponse response) throws Exception
{
bytes[] byteData = model.get("byteData");
// ???
}
}
必須如何查看代碼的樣子,當我想用一個ResponseEntity呢?
還是在視圖類中使用ResponseEntity沒有意義,如果是的話,爲什麼?
非常感謝您的幫助!