본문 바로가기
블로그 이미지

방문해 주셔서 감사합니다! 항상 행복하세요!

  
   - 문의사항은 메일 또는 댓글로 언제든 연락주세요.
   - "해줘","답 내놔" 같은 질문은 답변드리지 않습니다.
   - 메일주소 : lts06069@naver.com


Spring framework73

Spring 자주 사용되는 비지니스 로직, 컨트롤러 파일 업로드(Spring file upload, contoller) 스프링, 스프링부트에서의 자주 사용되는 파일 업로드에 대한 내용 입니다. 프로그램 개발을 하다 보면 파일 업로드 / 다운로드와 관련된 일을 자주 하는 경우가 있습니다. 업로드인 경우에는 주로 멀티파트의 객체에서 값을 가져와 반복문(itor)을 통하여 파일을 다른 경로에 저장하고, 해당 결과 값을 받도록 만들어 줍니다. 이를 좀 더 간단하고 비지니스 성격의 기능을 단순화 할 수 없을까에 대해서 접근하여 보았습니다. 먼저 파일과 관련된 정보를 담는 빈(Bean)형식의 클래스를 만들어 줍니다. * 파일 이름 : FileVo public class FileVo { private String filePath; private String fileRealName; private String fileConvName; .. 2021. 6. 3.
Spring RSS Feed 기능 만들기(전자정부 RSS Feed) RSS 피드는 블로그 또는 홈페이지와 같은 웹 사이트와 최신 정보를 쉽게 사용할 수 있는 일종의 구독하기 방법 입니다. 사이트에서 RSS 피드를 제공 한 다면, 게시물이 올라가면 설정 해 놓은 사이트를 대상으로 알림을 받을 수 있으며 요약 또는 전체 게시물을 확인 할 수 있습니다. Spring 환경에서의 기능 구현은 어렵지가 않습니다. 먼저 필요한 라이브러리를 받아 줍니다. * Maven 기준 com.rometools rome 1.13.1 * Gradle 기준 implementation group: 'com.rometools', name: 'rome', version: '1.13.1' RSS Feed 의 구조는 큰 채널 안에서 item이 존재하는 모습으로 되어 있습니다. 체널의 기본 속성은 제목, 설명,.. 2021. 5. 31.
Spring RequestBody, RequestParam의 컨트롤러(Controller) "연동"과 관련된 이슈중 하나는 요청 방법에 따른 데이터 매핑과 관련된 이슈 입니다. 스프링 프레임워크에서 사용 할 수 있는 에노테이션인 @RequestBody, @RequestParam 및 @ModelAttribute등을 사용하면 사용자의 요청 데이터를 쉽게 매핑할 수 있습니다. 대신 이러한 에노테이션을 사용하려면 방법을 정해야 합니다. 헤더에서의 content-type에 따라 json방식, application/x-www-form-urlencoded 방식 및 text/plain방식 등 다양한 방법이 존재하며, 마찬가지로 get과 post에 따라서 요청하는 body가 있을수도 있고 없을 수도 있습니다. 간단한 예로 @RequestBody 에노테이션은 json 형식의 데이터 값만 매핑 할 수 있으며, @.. 2020. 12. 7.
SpringBoot change Java 8 to Java 11(스프링 부트 Java 1.8을 11로 변경) 스프링 부트에서 자바 1.8버전을 1.11버전으로 바꾸는 방법입니다. * 개발환경에 다소 차이가 있어서 내용이 상이할 수 있습니다. * 개발 환경 - 개발 도구 : STS 버전 4.2.0.RELEASE - 자바 버전 : 11 - 데이터 베이스 : 몽고db - 빌드 플러그인 : maven 기본 조건은 프로젝트가 자바11로 환경 세팅이 다 되어있다는 가정 입니다. 그레이들(Gradle)을 사용하지 않고 메이븐(maven) 환경에서 개발을 진행 하였습니다. 먼저 pom.xml에 내용을 확인하여 줍니다. 1. 해당 버전을 11로 바꾸어 줍니다. 간혹 1.11로 바꾸는 경우가 있는데, 11로 바꾸도록 합니다. 11 2. 빌드(build) 항목에서 메이븐 컴파일러를 추가하여 줍니다. 프로젝트를 자동으로 만드는 경우.. 2020. 12. 2.
Springboot 터널링(스프링 부트 터널링, Spring boot ssh, 스프링 부트 ssh) Springboot에서 터널링을 활용하여 데이터 베이스에 접속해야 되는 기능을 만드는 것은 어렵지 않습니다. 터널링을 하여 주는 클래스를 생성한 뒤에 SSH를 통해서 원하는 포트로 연결을 해 준 다음에 데이터베이스를 사용하면 됩니다. 아래와 같은 터널링용 클래스가 있다고 가정하여 봅니다. 데이터베이스는 몽고DB에 접속하는 상황 입니다. * 터널링용 클래스 예제 import com.jcraft.jsch.JSch; import com.jcraft.jsch.Session; public class SshTunneling { private static JSch jsch = new JSch(); private String url = "원격주소"; private String username = "아이디"; priva.. 2020. 11. 25.
SpringBoot InfluxDB(Spring boot 인플럭스DB) 간단하게 정리하였습니다! 인플럭스db는 시계열(Time Series) 데이터베이스 중 하나로, RDBMS와 많은 점에서 유사하지만 모든 Row가 Time이라고 불리는 고유한 시간값을 가진다는 점에서 차별점을 갖는 형태의 데이터 베이스 입니다. InfluxDB의 목적은 관계형 데이터를 저장하는 것이 아니라 지속적으로 수집되는 값들을 시간의 차원에서 관리하기 용이하도록 만들어 졌다고 할 수 있습니다! 스프링 부트에서 연동하는 방법은 간단합니다. 1. 관련된 라이브러리를 받습니다. * maven 기준 org.influxdb influxdb-java 2. 연결할 클래스를 생성하여 줍니다. 인플럭스DB 자체는 HTTP 프로토콜을 활용한 서버를 제공하여 주기 때문에 쉽게 연결 가능 합니다! import org.in.. 2020. 11. 19.