2016-05-23 256 views
0

我使用上傳圖像向數據庫添加了一行。當我查詢行的列表時,圖像出現,但是當我嘗試更新行時,我遇到了錯誤「無法加載資源:服務器響應400的狀態:彈簧mvc」。圖像不出現!加載資源失敗:服務器響應的狀態爲400:spring mvc

//add row 

@RequestMapping(value = "/add") 
public String ajouter(@ModelAttribute("serv") Service service ,MultipartFile file) throws Exception { 

    Long idser; 
    // add 
    if (service.getIdService() ==0) { 

     service.setImgService(file.getOriginalFilename()); 
     idser = metier.addservice(service); 
     // add new image file 
     if (!file.isEmpty()) { 
      String path = System.getProperty("java.io.tmpdir") + "/" 
        + idser + "_" + service.getImgService(); 
      file.transferTo(new File(path)); 
     } 
    } 

    return "redirect:/page/pageus"; 

} 

// update 

@RequestMapping("/edit/{id}") 
    public ModelAndView editService(@PathVariable("id") long id,Model model,@ModelAttribute Service service){ 

    service=metier.getService(id); 
    model.addAttribute("editedserv",service); 

    return new ModelAndView("Admin/page/pageedit","serviceObject",service); 
    } 


    // get image of the products 

    @RequestMapping(value = "Photoser", produces = MediaType.IMAGE_JPEG_VALUE) 
    @ResponseBody 
    public byte[] photoCat(Long idser) throws Exception { 
     Service serv = metier.getService(idser); 
     String path = System.getProperty("java.io.tmpdir") + "/" + idser+"_"+serv.getImgService(); 
     File serImage = new File(path); 

     return IOUtils.toByteArray(new FileInputStream(serImage)); 
    } 

//show img in jsp 
    <img src="Photoser?idser=${serviceObject.idService}"/> 

有人可以幫助我!

+0

你應該給一個'img'標籤的src圖像url,而不是一個url retreived字節數據。 – Blank

+0

我保存圖像在tmpdir,所以我不能給一個圖像網址img,我找不到解決方案!可以幫助我@Reno!thanx。 – Raki

回答

0

你應該用js或jquery的通過以下內容來填充src[圖像字節數組數據]是字節的數據串,所以你可能需要您的返回類型更改爲String在控制器,反正試試吧;)

<img src="data:image/png;base64,[your image byte array data]"/> 

看一看embedding base64 images

相關問題