고로고로
31
2021-07-02 15:57:20 작성 2021-07-02 15:58:18 수정됨
4
166

스마트에디터 이미지 업로드시 실제 파일이 들어오지 않습니다.


안녕하세요.

스마트에디터로 게시판 구현중 모르는 부분이 있어서 질문 합니다.


현재 상황 : 스마트 에디터로 사진 업로드 하고 등록을 하면 DB에 저장이 되고 조회시 정상적으로 이미지도                   보여 집니다. 하지만 업로드 경로에 설정한 폴더에 해당 이미지 파일이 들어오지 않습니다.

                   현재  경로 설정을 resources / upload로 설정을 했습니다만 경로 설정이 문제인 걸까요??



<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    
<%@page import="java.io.*"%>
<%@page import="java.util.UUID"%>
<%@page import="java.text.SimpleDateFormat"%>
 
<%
String sFileInfo = "";
//파일명 - 싱글파일업로드와 다르게 멀티파일업로드는 HEADER로 넘어옴
String name = request.getHeader("file-name");
String ext = name.substring(name.lastIndexOf(".")+1);
//파일 기본경로
String defaultPath = request.getServletContext().getRealPath("/");
//파일 기본경로 _ 상세경로resources
String path = defaultPath + "resources" + File.separator + "upload" + File.separator;
File file = new File(path);
if(!file.exists()) {
  file.mkdirs();
}
String realname = UUID.randomUUID().toString() + "." + ext;
InputStream is = request.getInputStream();
OutputStream os=new FileOutputStream(path + realname);
int numRead;
//파일쓰기
byte b[] = new byte[Integer.parseInt(request.getHeader("file-size"))];
while((numRead = is.read(b,0,b.length)) != -1){
  os.write(b,0,numRead);
}
if(is != null) {
  is.close();
}
os.flush();
os.close();
sFileInfo += "&bNewLine=true&sFileName="+ name+"&sFileURL="+"/resources/upload/"+realname;
out.println(sFileInfo);
%>
0
  • 답변 4

  • hhj
    948
    2021-07-02 16:28:14

    디비에 혹시 base64인코딩 되서 사진이 들어가나 확인해보세여

  • 고로고로
    31
    2021-07-02 16:40:32 작성 2021-07-02 16:40:51 수정됨

    hh

    20210629103813e65a1810-f8c0-4c08-bdf8-d8090f0f6395.png 이런 형식으로 DB에 저장되고 있습니다.

  • hhj
    948
    2021-07-02 16:50:22

    혹시 로컬에서 돌리셨나여

    이클립스에서 서버실행 후 컴파일된 파일이 들어있는 경로랑 이클립스에서 소스파일을 보관하는 경로랑 달라여

    탐색기로 이클립스 워크스페이스에서 파일명으로 검색해보시면 나올거예여

  • 고로고로
    31
    2021-07-02 17:07:10

     hhj


    확인해보니 .metadata 폴더 내부에 생성되고 있었네요.

    바쁘신데 시간내주셔서 감사합니다! :)

  • 로그인을 하시면 답변을 등록할 수 있습니다.