请教大神们!!!! 怎样把文件转成二进制流存进数据库相应字段

yjzlpp 2016-06-25 05:44:04
@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':'操作失败'}");
}
}
...全文
360 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sg19911227 2016-06-25
  • 打赏
  • 举报
回复
File file = new File("D:\\test"); try { byte[] bytes = FileUtils.readFileToByteArray(file); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } 这样可以转为字节流的形式!!!
sg19911227 2016-06-25
  • 打赏
  • 举报
回复
怎么有这么奇怪的需求??实际项目中的?文件的话一般保存在本地比较好吧,数据库存路径就ok的
yjzlpp 2016-06-25
  • 打赏
  • 举报
回复
我那样写的对吗 inmap.put("pageTemplatesFile", data); 这句可以把二进制流文件存进数据库相应字段吗

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧