package com.zkx.servlet.PZ;import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.Iterator;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.MultipartConfig;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import javax.servlet.http.Part;import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;import com.jspsmart.upload.SmartUpload;
import com.zkx.pojo.PangZhan;
import com.zkx.service.PangZhanService;
import com.zkx.service.impl.PangZhanServiceImpl;
//设置访问活着调用这个Servlet的路径
@WebServlet("/photoes")
//说明该Servlet处理的是multipart/form-data类型的请求
@MultipartConfig
public class PZAddServlet extends HttpServlet{
   List piclist=new ArrayList();  //放上传的图片名
     
    public void destroy() {
        super.destroy(); // Just puts "destroy" string in log
        // Put your code here
    }     public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        
        String url=request.getSession().getServletContext().getRealPath("/photoes");
        String name=null;
         
        DiskFileItemFactory factory=new DiskFileItemFactory();
        ServletFileUpload sfu=new ServletFileUpload(factory);
        sfu.setHeaderEncoding("UTF-8");  //处理中文问题
        sfu.setSizeMax(1024*1024*5);   //限制文件大小
        PangZhan pangZhan=new PangZhan();
        
        try {
            List<FileItem> fileItems= sfu.parseRequest(request);  //解码请求 得到所有表单元素
            for (int i=0;i<fileItems.size();i++) {
             FileItem fi=fileItems.get(i);
                //有可能是 文件,也可能是普通文字 
if (fi.isFormField()) { //这个选项是 文字 
                  
                    if(i==0){
                    pangZhan.setGCXM(fi.getString());
                    System.out.println(pangZhan.getGCXM()+"GCXM");}
                    if(i==1){
                    pangZhan.setPz_ID(Integer.parseInt(fi.getString()));
                    System.out.println(pangZhan.getPz_ID()+"ID");}
                    if(i==2){
                    pangZhan.setSgdw(fi.getString());
                    System.out.println(pangZhan.getSgdw()+"sgdw");}
                    if(i==3){
                     pangZhan.setHeTong(fi.getString());
                     System.out.println(pangZhan.getHeTong()+"HT");
                    }
                    if(i==4){
                     pangZhan.setPperson(fi.getString());
                     System.out.println(pangZhan.getPperson()+"旁站人");
                    }
                    
                    
                    
                    if(i==5){
                     pangZhan.setPproject(fi.getString());
                     System.out.println(pangZhan.getPproject()+"ppro");
                    }
                    if(i==7){
                     pangZhan.setSgjs(fi.getString());
                     System.out.println(pangZhan.getSgjs()+"sgjs");
                    }
                    if(i==8){
                     pangZhan.setPzqk(fi.getString());
                     System.out.println(pangZhan.getPzqk()+"pzqk");
                    
                    }
                    if(i==9){
                     pangZhan.setZysj(fi.getString());
                     System.out.println(pangZhan.getZysj()+"zysj");
                    }
                    if(i==10){
                     pangZhan.setProblem(fi.getString());
                     System.out.println(pangZhan.getProblem()+"problem");
                    }
                    System.out.println(request.getSession().getServletContext().getRealPath("/photoes")+"Path");
                }else{
                    // 是文件
                            name =fi.getName();
                    System.out.println("文件名是:"+name);  //文件名 
                    // fn 是可能是这样的 c:\abc\de\tt\fish.jpg
                    fi.write(new File(url,name));                     if (name.endsWith(".jpg")) {
                        piclist.add(name);  //把图片放入集合
                    }
                }                
            }    
            
        } catch (Exception e) {
            e.printStackTrace();
        }
        PangZhanService pangZhanService=new PangZhanServiceImpl();
     pangZhan.setPtime(new Date());
         System.out.println(pangZhan.getPtime()+"time");
        pangZhan.setUrl(url);
        pangZhan.setName(name);
        String temp=pangZhanService.inserPangZhan(pangZhan);
        
        //去显示上传的文件
        
        response.sendRedirect("jsp/PangZhan/PangZhanAdd.jsp");
        
                  
    }     public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // fix 修改过
        doGet(request, response);
    }     /**
     * Initialization of the servlet. <br>
     *
     * @throws ServletException if an error occurs
     */
    public void init() throws ServletException {
        // Put your code here
    }
}图片已经上传到tomcat下,但是eclipse刷新也没有