본문 바로가기

Dev-/Spring

Ajax를 이용한 파일 처리-3. Ajax를 이용한 파일 처리-1. Ajax를 이용한 파일 처리-2. 첨부파일 기능이 다소 복잡하네요.. 절반정도 진행했는데 코드 양이 상당합니다. 지난 포스트에서는, 임의의 Drop 블록을 만들고 파일을 블록에 올렸을 때 1. 기본 이벤트를 취소 2. FormData에 "file" 키의 값으로 file 객체(Drop 블록에 올라온 파일)를 담아 "POST" 방식으로 요청하였습니다. [UploadController.java] 그렇다면 UploadFileUtils 클래스에 대해 알아봅시다. UploadFileUtils는 5개의 메서드를 포함하고 있습니다. 1. uploadFiles(String uploadPath, String orginalName, byte[] fileData) - 고유 파일명 세팅("uu..
Ajax를 이용한 파일 처리-2. Ajax를 이용한 파일 처리-1. 포스트에 이어 진행하겠습니다. fileDrop 클래스의 "drop" 이벤트 처리를 해줍니다. POST 방식으로 서버에 보내기 위해 FormData 객체를 만들어 파일을 담아줍니다. 주의할 점이 있습니다. 1. processData:false : 기본값은 true로, 데이터를 "application/x-www-form-urlenceded" 타입으로 전송합니다. -> 다른 형식으로 전송하기 위해 false로 지정합니다. 2. contentType:false : 기본값은 "application/x-www-form-urlenceded" -> 파일의 경우 "multipart/form-data"방식으로 전송하기 위해 false로 지정합니다. [참고: 코드로 배우는 스프링 웹 프로젝트]
Ajax를 이용한 파일 처리-1. 파일 업로드 방식에는,, 을 사용하는 방법과 Ajax를 사용하는 방법이 있습니다. - 을 사용하는 방법이란,,, form으로 파일을 서버로 보낼 때, 화면전환이 필히 일어나는데, 이를 막기 위해 동일 화면에 이라는 영역을 두어 java srcipt로 화면 전환을 막아주는 방법을 말합니다. 디자인 요소가 섞일 수 있어서,, 유지보수가 매~우 힘들다고 합니다. 검색결과,,, 호불호가 갈리는 것이 아니라, 대부분 사용은 지양하는 듯 하네요. - Ajax를 이용한 방법은 화면에 임의의 블럭을 두어, 파일을 끌어다 놓으면 업로드 하는 방식을 말합니다. 모든 기본적인 페이지 영역에 임의의 파일을 끌어다 놓으면, 그 파일이 새창으로 열립니다. 따라서, 이 이벤트를 막아주고, 그 파일의 정보만 불러오는 것이 시작입니다..
스프링에서 다음으로 값을 넘겨줄 때 이름을 지정해주지 않으면,, 파라미터 타입의 앞글자를 소문자로 바꿔 전송됩니다.비슷하게 넘겨주는 각종 처리도 마찬가지. Criteria cri로 받았을 땐, 따로 명시해주지 않아도cri로 전달이 잘 되었는데,, 정확하게는 잘 모르겠습니다.
스프링을 쓰는 이유 - 1. DI(의존 주입) + IOC(제어의 역전) - DI(의존 주입)- IOC(제어의 역전) 아무 스프링 책을 펼치시면 가장 먼저 나오는 단어들입니다. - DI: '의존관계에 있는 객체를 생성하지 않아도, 그 종속객체를 사용할 수 있는 것' 여기서 의존관계란 쉽게,, 하나의 객체에서 다른 하나의 객체를 사용하는 관계를 말합니다. 뭐.. 예를 들어 A 클래스 내에서 B 클래스를 사용한다면,, A와 B는 의존관계에 있다고 할 수 있습니다. (엄밀히는 'A가 B에 의존', B가 변한다면 A가 변하기 때문입니다.) 보통 클래스 내에서 객체를 사용하기 위해서는 아래와 같이 객체를 생성해주어야합니다.public class A { /** * new B();와 같이 객체를 생성해주어야 함 */ B b = new B(); b.method1(); } 스프링에서는 아래와..
web.xml 한글 인코딩 필터(force) web.xml에 넣어 사용하시면 됩니다.db의 한글 인코딩 세팅, 프로젝트에 사용되는 각종 파일들의 인코딩 세팅이 완벽한데도 한글이 깨진다면 encodingFilter가 설정되지 않았을 확률이 큽니다.
<script>영역에서 표현언어(EL) 사용 영역에서 파라미터를 잡을 때,,--> ""('') 사용
@RestController와 @Controller의 차이 현재 개인 프로젝트로 Rest 방식으로 설계된 게시판을 진행하고 있습니다. 초기에,, Rest 방식은 무조건 @RestController를 사용하면 되겠지..했는데 그건 또 아니더군요. 이유는 @RestController가 view 페이지를 리턴하지 않는다는 것이었는데요. 그래서 view가 따로 필요한 부분은 @Controller로 선언해 진행하자.며 진행을 하다가이번엔 또 반대로 @ResponseBody가 필요한 부분이 따로 생겼습니다. 해서,,, 갑자기 @RestController와 @Controller의 차이가 무엇인지 궁금해져 검색을 해보니...@RestController에서는 @RequsetMapping이 @ResponseBody를 가정한다는 사실을 알게되었습니다. 대강, @RestControl..