java表單處理帶文件的處理 對文件過濾處理

package com.xiong.mendianfu.controllers;


import com.xiong.mendianfu.bean.PageList;
import com.xiong.mendianfu.bean.QiyeBean;
import com.xiong.mendianfu.services.QiyeService;
import com.xiong.mendianfu.services.impl.QiyeServiceImpl;
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 org.apache.commons.io.FilenameUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;

/**
 *企業信息管理
 */
@Controller
@RequestMapping("/qiye")
public class QiyeController {
    @Resource
    private QiyeServiceImpl qiyeService;
    @RequestMapping("/createqiye")
    public ModelAndView create(HttpServletRequest request, HttpServletResponse response){
        ModelAndView mv=new ModelAndView();
        DiskFileItemFactory factory=new DiskFileItemFactory();
        ServletFileUpload upload=new ServletFileUpload(factory);
         try{
             Map<String,String> result=new HashMap<String,String>();
             List<FileItem> items = upload.parseRequest(request);
             for(FileItem item:items){
                 if(!item.isFormField()){
                     //將文件內容保存到磁盤上。
                     String path="/upload";
                     //獲取真實路徑
                     path=request.getSession().getServletContext().getRealPath(path);
                     String filename="";
                     filename=item.getName();//原始文件名
                     filename=(new Date()).getTime()+"." + FilenameUtils.getExtension(filename); //文件重命名
                     FileOutputStream os = new FileOutputStream(path+ File.separator+filename);
                     if(filename.endsWith(".jpg")){
                         IOUtils.copy(item.getInputStream(),os);
                         os.flush();
                         os.close();
                         result.put(item.getFieldName(),"/upload/"+filename);
                     }else {
                         mv.addObject("loginInfo", "添加 失敗");
                         mv.addObject("nextUrl", request.getContextPath() + "/index.jsp");
                         mv.setViewName("/msg.jsp");
                         return mv;
                     }
                 }else{
                     result.put(item.getFieldName(), IOUtils.toString(item.getInputStream(),"utf-8")) ;
                 }
             }
             QiyeBean qiyeBean=new QiyeBean();
             String uuid =UUID.randomUUID().toString().replace("-", "");
             qiyeBean.setQiyeid(uuid);
             qiyeBean.setMingcheng(result.get("mingcheng"));
             qiyeBean.setDizhi(result.get("dizhi"));
             qiyeBean.setDianhua(result.get("dianhua"));
             qiyeBean.setWxsubappid(result.get("wxsubappid"));
             qiyeBean.setWxsubmchid(result.get("wxsubmchid"));
             qiyeBean.setAdminopenid(result.get("openid"));
             qiyeBean.setAlipaysubmchid(result.get("aplipaysubchid"));
             qiyeBean.setAlipayzhanghao(result.get("aplipayzhanghao"));
             qiyeBean.setAlipaysubappid(result.get("aplipaysubappid"));
             SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
             Date date = sdf.parse(result.get("shijian").toString().replaceAll("-",""));
             qiyeBean.setQianyue(date);
             qiyeBean.setBeizhu(result.get("beizhu"));
             qiyeBean.setYingyezhizhao(result.get("fujian"));
             qiyeBean.setKaihuhang(result.get("kaihuhang"));
             qiyeBean.setZhanghao(result.get("zhanghao"));
             boolean results = qiyeService.create(qiyeBean);
             if(results){
                 mv.addObject("loginInfo", "添加成功");
                 mv.addObject("nextUrl", request.getContextPath() + "/index.jsp");
             }else {
                 mv.addObject("loginInfo", "添加失敗");
                 mv.addObject("nextUrl", request.getContextPath() + "/index.jsp");
             }
         } catch (FileUploadException e) {
             e.printStackTrace();
         } catch (FileNotFoundException e) {
             e.printStackTrace();
         } catch (IOException e) {
             e.printStackTrace();
         } catch (ParseException e) {
             e.printStackTrace();
         }
        mv.setViewName("/msg.jsp");
        return mv;
    }
   
}
 
package com.xiong.mendianfu.services.impl;

import com.xiong.mendianfu.bean.PageList;
import com.xiong.mendianfu.bean.QiyeBean;
import com.xiong.mendianfu.dao.QiYeDao;
import com.xiong.mendianfu.services.QiyeService;
import com.xiong.mendianfu.services.CommonCRUDService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Service
public class QiyeServiceImpl implements QiyeService, CommonCRUDService {
 @Resource
	  QiYeDao qiYeDao;

	/**
	 *@see com.xiong.mendianfu.services.QiyeService#updateAdmin(int, String)
	 */
	public  boolean updateAdmin(String qiyeid, String openid){
		int  result=0;
		Map map=new HashMap();
		map.put("qiyeid",qiyeid);
		map.put("openid",openid);
		result= qiYeDao.updateAdmin(map);
		return result>0;
	}
	 
	/**
	 *@see com.xiong.mendianfu.services.CommonCRUDService#create(Object)
	 */
	public  boolean  create(Object obj){
		int  result=0;
		result= qiYeDao.create((QiyeBean ) obj);
		return result>0;
	}
	  
  
}
 
<%--
  Created by IntelliJ IDEA.
  User: Administrator
  Date: 2016/11/27
  Time: 15:47
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ include  file="../int/top.jsp"%>
<div class="row">
    <div class="col-xs-2"></div>
<div class="col-xs-6">
    <div class="row">
        <div class="col-xs-12"><h5></h5></div>
    </div>
    <form action="<%=ctxpath%>/qiye/createqiye.do" enctype="multipart/form-data" method="post">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="mingcheng" placeholder="請輸入企業名稱">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="dizhi" placeholder="請輸入企業地址">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="dianhua" placeholder="請輸入電話">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="wxsubmchid" placeholder="請輸入微信商戶號">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="wxsubappid" placeholder="請輸入微信appid">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="aplipaysubchid" placeholder="請輸入支付寶商戶號">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="aplipaysubappid" placeholder="請輸入支付寶appid">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="aplipayzhanghao" placeholder="請輸入支付寶賬號">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="shijian" placeholder="請輸入簽約時間">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="file" id="" name="fujian" placeholder="請輸入營業執照">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text"id="" name="zhanghao" placeholder="請輸入對公賬號">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="kaihuhang" placeholder="請輸入開戶銀行">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="beizhu" placeholder="請輸入備註">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <input class="form-control" type="text" id="" name="openid" placeholder="請輸入管理員微信號">
        <div class="row">
            <div class="col-xs-12"><h5></h5></div>
        </div>
        <button type="submit" class="btn btn-primary">添加</button>
    </form>
</div>
</div>



發佈了89 篇原創文章 · 獲贊 21 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章