cs小斯cs 2015-01-23 08:58 采纳率: 0%
浏览 2334

SpringMVC 下使用 swf+uploadify上传图片问题

在SpringMVC下使用swf+uploadify上传图片,没有使用outputstream任何东西,
但是图片保存到 tomcat/bin目录下了,为什么?
下面是后台代码,后台是一个servlet:

protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
ServletFileUpload upload = new ServletFileUpload(
new DiskFileItemFactory());
String imageId = "";
String imageSrc = "";
InputStream fileInputStream = null;
try {
List<?> items = upload.parseRequest(request);
if (null != items) {
Iterator<?> itr = items.iterator();
while (itr.hasNext()) {
FileItem item = (FileItem) itr.next();
if (item.isFormField()) {
continue;
} else {
int maxIndexNumber = getMaxIndexNumber(
DscConsts.DSC_SPECIAL_AREA,
DscConsts.UPLOAD_FILE_CLASS);
fileInputStream = item.getInputStream();
String imgUrl = qiniuService.add(fileInputStream); //将图片保存到七牛
imageSrc = imgUrl;
DisplayImage displayImage = new DisplayImage();
imageId = displayImage.getId();
displayImage.setClassId(DscConsts.DSC_SPECIAL_AREA);
displayImage.setClassName(DscConsts.UPLOAD_FILE_CLASS);
displayImage.setOriginal(imgUrl);
if (maxIndexNumber >= 0) {
displayImage.setIndexNumber(maxIndexNumber + 1);
} else {
displayImage.setIndexNumber(0);
}
displayImageService.add(displayImage); //将图片相关的信息保存到数据库
}
}
}
} catch (Exception e) {
e.printStackTrace();
} finally{
fileInputStream.close();
}
out.print("{\"imageId\":\"" + imageId + "\",\"imageSrc\":\"" + imageSrc
+ "\"}");
}

// 获取最大的MaxIndexNumber
private int getMaxIndexNumber(String id, String className) {
    List<Object> result = displayImageDao
            .findByHql("select Max(indexNumber) from DisplayImage where classId = '"
                    + id + "' and className = '" + className + "'");
    if (result == null || result.size() == 0)
        return -1;
    return result.get(0) == null ? -1 : (Integer) result.get(0);
}
  • 写回答

1条回答 默认 最新

  • 偸訫賊灬 2015-01-23 09:57
    关注

    FileItem的的作用,你可以去查查

    评论

报告相同问题?

悬赏问题

  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 关于#python#的问题:自动化测试