본문 바로가기

FrameWork

작성일: 2020. 2. 23. 11:10
작성일: 2020. 2. 22. 20:16
작성일: 2020. 2. 12. 11:24
Spring MVC - 유연한 다중 파일업로드 핸들러 만들기 (Multipart upload) 다중파일 안녕하세요, 이번 포스팅에서는 Spring MVC를 이용해 웹사이트 구축시 다중파일 업로드를 구현해야하는 상황에서, 발생했던 간단한 팁을 알아보려고 합니다. 유연한 다중파일 업로드 핸들러1. 일반적인 파일 업로드 핸들러 일반적인 경우 다중파일 업로드를 위해서 위와 같이 핸들러를 만들게 됩니다. 중요한 점은 RequestParam(key)의 괄호안의 key값과, form을 이용해 파일을 업로드할때의 key값이 일치해야 한다는 점입니다. 그러면, @RequestParam의 괄호 안에 적힌 (file1, file2)에 사용자가 form을 통해 업로드하는 파일들이 각각 맵핑됩니다. (Postman을 이용해 form을 제출했습니다.) 문제점위에서 구현한 핸들러는 두가제 문제를 안고있습니다.업로드할 파일의..
작성일: 2020. 1. 29. 13:56
SpringBoot - 한글, 한자 인코딩(Encoding) 에러시 체크리스트! SpringBoot Db사용시 인코딩 이번 포스팅은 Spring Boot를 이용해 만들어진 어플리케이션 서버에서, DB에 값을 입력하는 경우 한자 또는 한글의 인코딩이 이루어지지 않았던 문제를 해결한 과정에대해 정리해보려 합니다. 문제상황제가 만든 어플리케이션은 중국인 관광객들을 대상으로하는 애플리케이션이었습니다. 중국인 관광객이 사진을 업로드하면, 그 사진에 대한 정보를 입력해주어야 하는 상황이었고, 이때 간체로 데이터를 입력해주어야 했습니다. 이를 SpringBoot로 만든 웹을 이용해서 입력하기로 했고, 입력한 결과 DataBase에서 간체를 인식하지 못하는 상황이 발생했습니다. 체크리스트1. Database(&& Table) Charset/Collation첫번째로 확인해보아야 할 것은 Databa..
작성일: 2020. 1. 17. 11:05
SpringBoot - resourceLoader가 jar에 포함된 File을 찾지 못하는 에러(classPath 사용시 발생) ResourceLoader classPath롤 이용해 파일을 찾는 경우 getFile() 사용시 에러 ResourceLoader classPath롤 이용해 파일을 찾는 경우 getFile() 사용시 에러1. 상황상황은 이렇습니다. SpringBoot를 이용해 서버를 구축하는 도중 file을 가져와야할 상황이 발생했고, 해당 파일은 classpath를 통해 접근할 수 있도록, src/main/resources/ 경로에 포함시키기로 했습니다. 또한 classpath 에 존재하는 파일에 쉽게 접근할 수 있도록 Spring에서 제공하는 ResourceLoader를 이용하기로 했습니다. 위그림을 보면, resourceLoader를 통해 성공적으로 file을 불러온것을 볼 수 있습니다. 하지만, 이 프로그램을 ja..
작성일: 2020. 1. 8. 17:17
SpringBoot - Profile에 따른 properties(yml) 파일 설정하기 1. properties 파일 관리의 불편함 이번 포스팅에서는 Spring에서 설정시 사용되는 application.properties를 활성화된 Profile에 따라 변경하여 적용하는 방법에대해 알아보도록 하겠습니다. Spring IOC 컨테이너의 기능(Environment , Profile) - https://galid1.tistory.com/514 profile에 대한 개념은 위의 글을 참조해주세요. 1. properties 파일 관리의 불편함기존 제가 운영하던 서버의 application.yml 파일입니다. 주석으로 처리됀 부분이 보이시나요?? 현재는 local에서 개발을 하고 있기 때문에, ssl설정을 잠시 주석으로 처리하고, port 역시 8080을 이용했습니다. 이렇게 이용을 하다가 배포를 ..
작성일: 2019. 11. 28. 17:03
SpringBoot - Timezone을 설정한 채로 배포하기(-Duser.timezone을 사용하지 않고) Spring Boot에서 Timezone을 설정하여 배포하기 1. Timezone을 설정해야 했던 시나리오Spring Boot를 이용해 서버를 구축하고 있던 중, 특정 도메인이 시간에 종속되는 상황이었습니다. 때문에, Timezone에 의존할 수 밖에없었습니다. 도메인을 간략히 설명드리자면, 사용자가 회원가입을 할때, 오전 10시에서 오후 6시사이에만 가능하도록 해야했습니다. 위의 메소드는 해당 문제상황을 간단하게 재연한 로직입니다. register()는 사용자가 "/test" 엔드포인트로 접근했을때, 회원가입을 시도했다고 가정한 메소드입니다. 먼저 LocalDateTime.now().getHour()를 이용해 현재시간을 저장합니다. 그림에서 보시는바와 같이 현재 시간은 오후 1시 즉, 13시 이므로, ..
작성일: 2019. 10. 5. 13:23