请教大神们!!!! 怎样把文件转成二进制流存进数据库相应字段
@RequestMapping(value="uploadTemplates.action")
public void uploadTemplates(HttpServletRequest request,HttpServletResponse response) throws Exception{
try {
MultipartResolver resolver=new CommonsMultipartResolver(request.getSession().getServletContext());
MultipartHttpServletRequest multipartRequest=resolver.resolveMultipart(request);
MultipartFile multipartFile=multipartRequest.getFile("templete");
InputStream in=multipartFile.getInputStream();
String pageTemplatesName=multipartRequest.getParameter("pageTemplatesName");
if(pageTemplatesName != null && !"".equals(pageTemplatesName)){
byte[] encoding = pageTemplatesName.getBytes("iso-8859-1"); // Tomcat默认是iso-8859-1编码方式
pageTemplatesName = new String(encoding,"UTF-8"); // 转码
}
String id = multipartRequest.getParameter("id");
Map<String,Object> map = new HashMap<String, Object>();
map.put("id", id);
List<Map<String,Object>> list=pageTemplateService.getpageTemplatesName(map);
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
byte[] data = new byte[4096];
int count = -1;
while ((count = in.read(data, 0, data.length)) != -1)
outStream.write(data, 0, count);
pageTemplateService.uploadTemplateIo(outStream.toByteArray(), (String) list.get(0).get("pageTemplatesName"));
Map<String,Object> inmap = new HashMap<String, Object>();
inmap.put("id", id);
inmap.put("pageTemplatesName", pageTemplatesName);
inmap.put("pageTemplatesFile", data);
pageTemplateService.uploadTemplates(inmap);
} catch (Exception e) {
e.printStackTrace();
response.setContentType("text/html;charset=UTF-8");
response.getWriter().print("{'failure':'true','success':'false','msg':'操作失败'}");
}
}