Angular JS

FormData data and file Upload

봄산 2018. 11. 26. 22:36

JS 파일


$scope.saveHnews=function(){

var fd = new FormData();

  var uploadUrl="McContentsInsert.do";

     

  if(!$scope.model.sub_title){

  $scope.model.sub_title="0";

  }

 

  fd.append("orgcd", angular.toJson($scope.model));

 

  if($scope.imgFile!=null){

  fd.append("imgFile", $scope.imgFile) ;

  }

  $http.post(uploadUrl, fd, {

        transformRequest: angular.identity,

        headers: {'Content-Type': undefined}

    })

    .success(function(data){

    //console.log(data.result);

     

    alert(data.result);

   

    $scope.model=null;

    $scope.imgFile=null;

   

     

    $window.location.href="#/hnews";

   

    })

    .error(function(){

   

    alert("등록실패");

    }); 


HTML


JAVA


MultipartHttpServletRequest multipartHttpServletRequest = (MultipartHttpServletRequest)request;

//String 파라미터 값을 받는 부분

  String org_cd = multipartHttpServletRequest.getParameter("orgcd");

  log.info("org_cd====>{}",org_cd);

    ObjectMapper mapper = new ObjectMapper();

Map<String, Object> hmap = new HashMap<String, Object>();

hmap = mapper.readValue(org_cd, new TypeReference<Map<String, String>>(){});

  

  

String system = System.getProperty("file.separator");

String path="/usr/local/tomcat7/img";

if(system.equals("\\")){

path="C:\\temp\\upload\\";

}

log.debug("path==>{}",path);

List<Map<String, Object>> list=null;

    list = fileUtils.FileSave(request,path);

log.info("파일갯수:"+list.size());


//등록파일이 있는 경우에만 처리 루틴

if(list.size() > 0) {

hmap.put("image_url", list.get(0).get("ORIGINAL_FILE_NAME"));

hmap.put("filesize", list.get(0).get("FILE_SIZE"));

hmap.put("path", path);

hmap.put("board_id", "2");

}

       

        hospitalDao.insert("HospitalAdmin.insertHnews", hmap);

        log.info("리턴 map값:"+hmap.toString());

        

        //이미지 정보 mc3_bbs_img테이블에 등록

        if(hmap.containsKey("image_url")) {

       

        hospitalDao.insert("common.insertImgInfo", hmap);

        }