springMVC返回js代碼片段

第一種方式比較靈活,如果沒有走判斷還是能返回視圖,推薦使用

writer(),只能打印輸出文本,不可以打印對象,print(),不僅可以打印輸出文本,還可以將一個對象以默認的編碼方式轉換爲二進制字節輸出

在servlet中的話,PrintWriter是不必關閉的,因爲response會幫你關閉,如果自己用PrintWriter的話,還是得關閉。順帶說一句,調用close時已經隱式地調用flush了   

@RequestMapping(value = "/items/new", method = RequestMethod.POST)
 public String handleCreate(@Valid @ModelAttribute("form") RedeemItemForm form, BindingResult bindingResult,Model model,HttpServletResponse response) {
    
     if(!bindingResult.hasErrors()){
         crmFacade.upsertGoodsSpecsBatch(goods);
         String result = "<script language='javascript'>" +
                 "if(confirm('需要前往設置庫存嗎')){" +
                 "window.location = '/points/redeem/items/stock/" +redeemItem.getId()+"'}"+
                 "</script>";

         response.setContentType("text/html; charset=UTF-8");
         response.getWriter().write(result);
     }
     return "redeem-item-edit";
 }

 第二種方式不推薦使用

@ResponseBody
@RequestMapping(value = "/items/new", produces = "text/html; charset=UTF-8")
 public String handleCreate() {
     
         crmFacade.upsertGoodsSpecsBatch(goods);
         result = "<script language='javascript'>" +
                 "if(confirm('需要前往設置庫存嗎')){" +
                 "window.location = '/points/redeem/items/stock/" +redeemItem.getId()+"'}"+
                 "</script>";    
     return result;
 }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章