개발환경에 문제가 생겨 influxdb를 다시 설치하였다. 그리고 언제나처럼 influxdb ui에 들어가서 api token 을 확인하려고 하니... 왠걸...안보인다... ㅎ admin token이 생성되어 있지만, token 확인 불가능 그래서 열심히 찾아봤고, 그 내용을 정리한다. 사전 준비 사항 - influxd 설치 - influx 설치 token 확인 방법 1. influx에 config 설정 influx 가 설치된 경로로 진입하여, config 파일을 생성한다. config 명은 default로 할 경우, influx 실행 시, 따로 config 명을 입력하지 않아도 되며, host-url, org, token 은 각자 본인에 맞게 작성하도록 한다. ※ token 확인하려는데, token을..
MySQL에 설치할 때마다 여기저기 찾아보기 힘들어, 이참에 블로그에 정리해보고자 한다. 1. MySQL 설치하기 2. 외부접속 IP 허용 설정하기 3. 외부접속 사용자 설정하기 4. 테스트 MySQL 설치하기 아래 명령을 통해, Ubuntu에서 mysql server 를 설치한다. $ sudo apt install mysql-server 아래 명령을 통해, 정상 설치되었는지 확인한다. 하단 캡처이미지와 같이 "active"가 뜨면 정상 설치된 것이다. $ sudo service mysql status 외부접속 IP 허용 설정하기 MySQL의 설정파일을 수정하여, 외부 접속이 가능하도록 변경한다. 아래 경로의 mysqld.cnf 파일을 수정한다. $ sudo vi /etc/mysql/mysql.conf...
spring-rest-docs를 적용해서 html로 API 문서를 공유하면 편하다. 하지만, 제출용으로 html 링크를 보낼 수 없는 관계로 pdf 형식으로 변경해야 했다. 아래는 spring-rest-docs 를 적용하여, .adoc 파일이 다 만들어졌다는 가정하에, pdf 로 문서를 만드는 방법에 대해서 소개한다. spring-rest-docs 적용 링크는 아래를 참고해주세요~ [링크] https://tbmaster.tistory.com/96 adoc 파일 -> pdf 변환 방법 $asciidoctor-pdf ./index.adoc -o ./publisher.pdf 명령어 asciidoctor-pdf 를 입력하고 변환하고자 하는 파일(index.adoc), 결과파일(publisher.pdf) 를 입력..
개발을 시작하면서, 이미지, 영상을 저장해야 할 일이 생겼다. 그래서 어떠한 방법들이 있는지 조사하던 중에 MongoDB에서 image, video를 저장할 수 있다하여, 테스트를 진행해보았다. 결과 이미지 저장 및 가져오기 : ./image/image1.png 파일을 mongoDB에 저장하는 테스트 코드이다. : mongoDB에 저장된 이미지를 불러와 ./result/mongo/image1.png 로 저장하는 테스트 코드이다. MongoDB에서 이미지와 영상은 동일한 코드로 저장되고, 불러올 수 있다. 아래는 영상에 대한 저장 및 불러오기 테스트 코드이며, 이미지와 다르지 않다는 것을 확인할 수 있다. 영상 저장 및 불러오기 테스트 수행 후, 생성된 결과 이미지, 영상이다. 동작 코드 spring-bo..
spring boot 프로젝트에 influxdb 를 연동해야 했다. spring boot 프로젝트는 java 언어로 작성되어 있었으며, build 툴은 gradle 이었다. 이미 spring boot 프로젝트에 influxdb-client-java, flux-dsl 라이브러리가 설치되어 있었고, 큰 문제 없이 사용하고 있었다. 그런데 기능을 추가하면서 필요한 기능이 생겼고, 해당 기능을 사용하려니, flux-dsl 의 버전이 낮아 기능을 제공하지 않았다. 그래서 기존 4.xx -> 6.5.0 으로 변경했다. implementation 'com.influxdb:influxdb-client-java:6.5.0' // https://mvnrepository.com/artifact/com.influxdb/flu..
커스텀 애너테이션을 만들게 된 이유 개발을 하다가 RestController 에서 하나의 메서드에 서로 다른 RequestBody를 받고 싶었다. 상황) 어떠한 서비스에 대한 동작을 제어하는 메서드 였으며, 동작제어 (시작, 종료) 에 따라, RequestBody에 포함하는 속성이 조금 달랐다. 1안) 동작제어 별로 메서드 따로 둠. => 고민을 하긴 했는데, 동일한 대상에 속성 값만 달라지는데, 메서드를 따로 둘만큼 기능 상에 큰 차이가 있다고 생각하지 않았기 때문에 일단 패스하였다. 2안) 메서드 파라미터에 @RequestBody 로 바로 타입 변환하지 않고, HttpRequestServlet을 이용하여, 동작제어에 맞는 타입으로 직접 변환 => 원래 하고자 했던 기능을 구현할 수 있다. 하나의 메서..
나는 Rest API를 Spring Rest Docs을 이용하여, 문서를 생성한다. 그리고 request 및 response 가 보기 쉽게 정렬되서 나오는 prettyPrint를 각 메서드에 적용하여 사용하였다. 그러다 최근에 각 메서드 마다 적용하는 prettyPrint를 setUp에 사용 방법 그대로 적용하였더니, 동작되지 않았고, 디버깅한 결과 mockMvc에 configuration에 적용되지 않음을 알게되었다. 그래서 하는 방식을 정리해 둔다. 동작되는 코드(Test 메서드) 동작 안되는 코드(setUp 메서드) 동작되는 코드(setUp 메서드) withRequestDefaults, withResponsedefaults request preprocessor, response preprocesso..
JAVA로 command 명령어를 작성할 수 있다. ProcessBuilder 를 이용하면 되는데, 나는 처음에 ProcessBuilder를 이용하여 scp를 실행하려고 하였다. 그런데, ProcessBuilder 를 이용해 scp를 사용하려면, password 입력을 처리가 어려워지는 문제가 있었다. 그래서 다른 방법을 찾아보던 중, jSch 라이브러리를 이용하여, scp를 실행시킬 수 있음을 알았다. 외부 라이브러리 추가 com.jcraft jsch 0.1.55 scp 파일 전송 코드 JSch jSch = new JSch(); Session session; try { session = jSch.getSession(accountUserName, scpAddr); session.setPassword(ac..