GC(Garbage Collector) 란? JAVA 개발을 하면서 Out Of Memory Error는 접할 수 밖에 없으며, 해당 에러가 운영환경에서 발생하게 되었을 때 서비스 장애로 까지 이어 질 수 있다. 때문에 메모리를 괸리해주는 GC의 개념에 대해서 이해하고, 동작 원리를 아는 것은 필수라는 생각이 든다. JAVA에서 객체가 생성되면 해당 객체는 JVM의 Heap영역의 메모리를 점유 한다. 해당 객체는 현재 참조 되지 않더라도 메모리 공간을 점유 한다. 물론 메모리 공간은 한정적이다. 한정적인 메모리에 현재 사용되지 않는 객체가 점유한 공간을 재때 정리해 주지 않으면 메모리 공간이 부족해 지고, 결국은 Out Of Memory Error 가 발생 할 수 밖에 없다. JAVA는 JVM을 통하여 ..
Spring-boot 프로젝트를 진행 한지도 거의 2년이 흘렀더니, 전혀 새로운 언어를 접하는 것과 같은 느낌을 받았다. 이대로는 안될 것 같아 하드코딩으로 되어 있던 개인 홈페이지를 리소스를 연동하는 RESTful API를 이용하여 구성되는 구조 변경 개인 프로젝트를 진행하기로 하였다. 웹서버는 React를 공부 하며 변경할 예정이고, 콘텐츠를 관리하는 CMS는 기존에 만들고 있던 PHP, Codeigniter를 사용, API서버는 JAVA, Spring-boot, MyBatis로 구성할 예정이다. 이번 프로젝트는 모두 github와 jenkins를 이용하여 버전 관리 및 배포하고, 개발 TOOL은 JetBrains 사의 intelliJ, PhpStrom, WebStorm을 사용할 예정이며, 개발되는 ..
H2 Console 사용하기 간결한 개발을 위해 별도로 Config 하는 Class 생성 없이 application.properties 를 사용하려 한다. spring.datasource.url=jdbc:h2:mem:testdb;MODE=MySQL;DATABASE_TO_UPPER=FALSE; spring.datasource.username=sa spring.datasource.password= spring.h2.console.enabled=true spring.h2.console.path=/console spring.h2.console.enabled=true 를 입력하여 console 사용 여부를 세팅하고 spring.h2.console.path=/console 으로 console 의 path를 설정 한..
LAF/J API를 활용한 FTP 접속 및 다운로드 입니다. . . import lafx.protocol.ftp.*; . . . 중략 . . . LFTPServiceEntity serviceEntity = new LFTPServiceEntity(); serviceEntity.setServerIP("대상 서버 아이피"); serviceEntity.setUserID("접속 아이디"); serviceEntity.setUserPassword("접속 패스워드"); serviceEntity.setMode("접속모드"); // active 또는 passive모드 LFTPService ftpService = new LFTPService(serviceEntity); LFTPControl ftpControl = new L..