본문 바로가기

반응형

전체 글

(297)
Spring MVC에서 video streaming 하기 Spring에서 mp4 동영상 같이 용량이 큰 파일을 내려보내 주려면 어떻게 해야 할까? 파일 읽어 들이고 내보내기 요청에 대해 응답으로 데이터를 내보내야 한다. 자바에서는 데이터를 InputStream으로 가져와서 OutputStream으로 내보낸다. 최상위인 InputStream과 OutputStream 추상 클래스를 extends 한 여러 class를 java.io package에서 제공하는데 대략 다음과 같다. InputStream OutputStream BufferedInputStream BufferedOutputStream ByteArrayInputStream ByteArrayOutputStream DataInputStream DataOutputStream FileInputStream File..
java에서 OpenCV로 face detection 해보기 java에서 OpenCV를 사용해보기 위한 설정을 이전 글에서 해보았다. 2022.02.04 - [Study/Java] - java 에서 OpenCV 사용해보기 이 글의 예제를 테스트하기 위해선 해당 설정이 먼저 진행되어야 한다. 다음으로 OpenCV를 이용해 face detection (얼굴 인식)을 해보았다. opencv 홈페이지의 튜토리얼 문서의 경우 c++과 python을 기준으로 안내가 되어 있다. https://docs.opencv.org/4.5.5/d0/dd4/tutorial_dnn_face.html java 기반의 경우 대부분의 예제가 swing 또는 안드로이드에서 gui를 처리하는 식이어서 일단 swing 방식으로 작성을 해보았다. swing으로 동영상 띄워보기 아래와 같이 작성해서 sw..
[troubleshooting] sonatype nexus BufferUnderflowException 발생 개인적으로 로컬에 sonatype nexus3를 로컬에 두고 사용하고 있었다. 그런데 어느 날 다음과 같은 에러가 발생하면서 k8s에 올려둔 nexus pod가 무한 restart를 하였다. 2022-02-21 09:03:26,721+0000 ERROR [FelixStartLevel SELECT FROM quartz_trigger WHERE name = ? AND group = ?] *SYSTEM com.orientechnologies.orient.core.storage.impl.local.paginated.OLocalPaginatedStorage - Exception `742BDBBA` in storage `plocal:/nexus-data/db/config`: 2.2.36 (build d3beb772..
java project에서 maven으로 asciidoctor-diagram 사용해보기 바로 이전 글에서 github이 markdown 문서에 mermaid를 지원하게 되었다고 소개했었다. 2022.02.16 - [Study/ETC] - Github markdown diagram 지원 소식 다만 github 사이트에서 markdown 문서 보기 할 경우만 지원이라 내가 만든 asciidoctor 문서에 mermaid를 사용해서 빌드할 수 없나 싶어 찾아보니 이미 있었다. Asciidoctor Diagram 소개 https://docs.asciidoctor.org/diagram-extension/latest/ Asciidoctor Diagram - Asciidoctor Diagram README for the Asciidoctor Diagram extension for Asciidoctor...
Github markdown diagram 지원 소식 github blog에 신박한 소식이 있어서 소개한다. https://github.blog/2022-02-14-include-diagrams-markdown-files-mermaid/ Include diagrams in your Markdown files with Mermaid | The GitHub Blog Mermaid is a JavaScript based diagramming and charting tool that takes Markdown-inspired text definitions and creates diagrams dynamically in the browser. github.blog Github의 Markdown 문법 사용 github은 markdown 문법의 파일인 경우(확장자가 ...
java에서 OpenCV 사용해보기 OpenCV 소개 유튜브 강의 영상을 보다 보니 파이썬으로 동영상의 얼굴을 인식하고 얼굴에 캐릭터를 씌우는 걸 설명하는 걸 보았다. 어떻게 영상에서 얼굴을 인식하는지 궁금했는데 OpenCV 를 이용하면 가능하다고 한다. https://opencv.org/ OpenCV(Open Source Computer Vision)는 실시간 computer vision을 위한 라이브러리로 C/C++로 개발되었고 TensorFlow, Torch/PyTorch 및 Caffe의 deep learning framework를 지원한다고 한다. OpenCV의 문서를 보면 DNN (Deep Neural Networks)의 Face Detection을 사용한다고 하는데 관련된 tutorial은 다음과 같다. Deep Neural N..
Java SE와 Java EE, Jakrta EE history history Java는 오래된 언어이다 보니 내역이 복잡하다. 어떻게 흘러왔는지를 간략하게 알고 있는 것이 도움이 될 듯하여 찾아보았다. 1995년 Sun microsystems에서 제임스 고슬링이 개발하여 최초 버전인 1.0을 공개하였다. 이는 이후 2010년에 Oracle이 Sun microsystems를 인수하면서 Java 저작권이 Oracle로 넘어가게 되고 Oracle이 Java 8까지 운영하다 이후 오픈소스인 OpenJDK와 상업용 OralcleJDK를 나누게 된다. 처음엔 JDK 1.0, JDK 1.1이란 이름으로 발표되었는데 이후 J2SE 1.2, 1.3, 1.4로 발표되었고 Standard Edition과 구분된 J2EE 1.2, 1.3, 1.4 (Enterprise Edition), ..
JDK LTS release 2년 주기 전환 및 Spring의 release 정책 JDK version Java SE 5 이전 자바는 JDK 1.0, JDK 1.1, J2SE 1.2, J2SE 1.3, J2SE 1.4처럼 1.x로 버전을 관리하였다. 이후 6, 7, 8과 같은 숫자로 변경이 되었는데 이때 이후 각 버전 별 업데이트가 계속 올라가게 된다. (관련 히스토리는 너무 길어 링크로 대체함) https://namu.wiki/w/Java/%EB%B2%84%EC%A0%84%20%EC%A0%95%EB%B3%B4 각 버전 별 업데이트 관리를 해야 하는 부담이 커지자 오라클은 상용과 오픈소스를 나누기로 하고 openjdk와 oraclejdk를 분리하고 6개월 주기로 major 버전을 변경하고 3년 주기로 LTS (Long Term Support) 버전을 관리하기로 하였다. 이에 대해서는 ..

반응형