スプリングでファイルアップロードを実現します.

2937 ワード

今日はファイルでアップロードします.springフレームを使います.インターネットで検索してみましたが、適当なコードが見つかりませんでした.親方の指示で5分でできます.簡単だと思います.
 
1.まずappication Contect.xmlファイルにファイルアップロードソリューションを設定します.
 
<!--        -->
	<bean id="multipartResolver"
		class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
	</bean>
2.アップロードしたjspページは、簡単です.
<form action="/gouwuche3/goods/add.htm" method="post" enctype="multipart/form-data" >
	<table align="center" border="1">
		<tr>
	 		<td colspan="2">    </td>
	 	</tr>
	 	
	 	<tr>
	 		<td>    </td><td><input name="goodsName" id="goodsName" type="text" /></td>
	 	</tr>
	 	<tr>
	 		<td>    </td><td><input name="goodsPrice" id="goodsPrice" type="text" /></td>
	 	</tr>
	 	<tr>
	 		<td>    </td><td><input name="goodsDes" id="goodsDes" type="text" /></td>
	 	</tr>
	 	 <tr>
	 		<td>    </td><td><input type="file" name="file" /></td>
	 	</tr>
	    <tr><td colspan="2"><input type="submit" value="  " /></td></tr>
	
	
	
	</table>
</form>
赤いコードは、ファイルをアップロードするためのものです.
 
 
3.controllerでファイルアップロード機能を実行します.
 
 @RequestMapping(value = "/add")
//MultipartFile  :org.springframework.web.multipart.MultipartFile;
    public ModelAndView addGoods( HttpServletRequest request, HttpSession session,
            @RequestParam("file") MultipartFile file) {
        ModelAndView mav = new ModelAndView();
        if (!file.isEmpty()) {

            String path = request.getContextPath() + "/jsp/";
            String fileName = file.getOriginalFilename();

            try {
                String tomcatPath = request.getServletContext().getRealPath("/image//"); //       
                FileCopyUtils.copy(file.getBytes(), new File(tomcatPath +"/" +  fileName));//FileCopyUtils  org.springframework.util.FileCopyUtils

            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

                   }

        mav.setViewName("test");
        return mav;

    }
 
これで終わりです.