上傳文件

  • publicclass D_BookServlet extends HttpServlet {  

  • privatestaticfinallong serialVersionUID = 1L;  

  • private D_BookService d_BookService = new D_BookServiceImpl();  

  • @Override

  • protectedvoid service(HttpServletRequest request, HttpServletResponse response)  

  • throws ServletException, IOException {  

  •        String method = request.getParameter("method");  

  •        System.out.println(method);  

  • if ("add".equals(method)) {  

  •            upLoadFile(request,  response);  

  •        }elseif("addbook".equals(method)){  

  •            addBook(request, response);  

  •        }elseif("edit".equals(method)){  

  •            showBook(request, response);  

  •        }  

  •    }  

  • //添加圖書

  • privatevoid addBook(HttpServletRequest request, HttpServletResponse response) throws IOException{  

  •          D_Book d_Book = new D_Book();  

  •          String product_pic  = request.getParameter("product_pic");  

  •          String product_name  = request.getParameter("product_name");   // varchar(100) NOT NULL,-- 商品名稱

  •          String fixed_price   = request.getParameter("fixed_price");    // double NOT NULL,-- 商品定價

  •          String dang_price    = request.getParameter("dang_price");     //double NOT NULL,-- 噹噹價

  •          String author        = request.getParameter("author") ;        //varchar(200) NOT NULL,-- 作者

  •          String publishing    = request.getParameter("publishing");     //varchar(200) NOT NULL,-- 出版社

  •          String publish_time  = request.getParameter("publish_time");   //date NOT NULL,-- 出版時間

  •          String author_summary= request.getParameter("author_summary"); // varchar(100) NOT NULL,-- 作者簡介

  •          String description   = request.getParameter("description");    //varchar(100) default NULL,-- 商品描述

  •          d_Book.setProduct_pic(product_pic);  

  •          d_Book.setProduct_name(product_name);  

  •          d_Book.setDang_price(Double.parseDouble(dang_price));  

  •          d_Book.setFixed_price(Double.parseDouble(fixed_price));  

  •          d_Book.setAuthor(author);  

  •          d_Book.setPublishing(publishing);  

  •          d_Book.setPublish_time(Date.valueOf(publish_time));  

  •          d_Book.setAuthor_summary(author_summary);  

  •          d_Book.setDescription(description);    

  •          d_Book.setScore(1);  

  •          d_BookService.insertD_Book(d_Book);  

  •          response.sendRedirect("/DangDang/Admin/jspfile/editbook.jsp");  

  •    }  

  • //上傳文件

  • @SuppressWarnings("unchecked")  

  • publicvoid upLoadFile(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{  

  • // 在解析請求之前先判斷請求類型是否爲文件上傳類型

  • boolean isMultipart = ServletFileUpload.isMultipartContent(request);  

  •          String url = "";  

  • if(isMultipart){  

  • // 文件上傳處理工廠

  •              FileItemFactory fileItemFactory = new DiskFileItemFactory();  

  • // 創建文件上傳處理器

  •              ServletFileUpload servletFileUpload = new ServletFileUpload(fileItemFactory);  

  • // 開始解析請求信息

  • try {  

  •                    List<FileItem> fileItems = servletFileUpload.parseRequest(request);  

  • // 對所有請求信息進行判斷

  • for(FileItem fileItem: fileItems){  

  • //如果提交信息爲表單格式設置爲新的url

  • if (fileItem.isFormField()) {  

  •                                String fieldName = fileItem.getFieldName();  

  •                                String value = fileItem.getString();  

  •                                url += "&" + fieldName + "=" + value;  

  •                       }  

  • //如果提交信息爲文件格式

  • else {  

  •                                String fileName = fileItem.getName();  

  •                                String basePath = System.getProperty("user.dir").replace("\\", "/")  + "/../webapps/DangDang/BookImage/";  

  •                                File file = new File(basePath, fileName);  

  • if (!file.exists()) {  

  •                                   file.createNewFile();  

  •                                }  

  •                                fileItem.write(file);  

  •                                url += "&product_pic"  + "=" + "BookImage/" + fileName;  

  •                       }  

  •                    }  

  •                } catch (FileUploadException e1) {  

  •                        e1.printStackTrace();  

  •                } catch (Exception e) {  

  •                        e.printStackTrace();  

  •                }  

  • //把設置好的url重新轉發到servlet或函數

  •              response.sendRedirect("/DangDang/admindbook?method=addbook" + url);                    

  •          }  

  •    }  

  • }  

  • //2013-08-26 23:24:17

  • 發表評論
    所有評論
    還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
    相關文章