본문 바로가기

개발자의 정보90

ExecutorService를 이용해 multi thread 활용하기 (Java) Multi Thread와 ExecutorService Multi thread는 여러가지 작업을 병행해서 동시에 처리 한다. 즉 순서대로 처리 하는 것이 아닌 닥치는 대로 하는 것이다. 이러한 멀티 쓰레드를 자바는 JDK 1.0부터 지원해 왔다. Thread 클래스를 선언하여 간편하게 사용이 가능하다. public static void main(String[] args) { Runnable task = new Runnable() { public void run() { System.out.println("Thread: " + Thread.currentThread().getName()); } } for (int i = 0; i < 10; i++) { Thread trhead = new Thread(task);.. 2020. 2. 19.
Linux - adduser, useradd 차이 useradd 명령은 사용자 홈 디렉토리를 포함한 사용자 관련 설정을 자동생성 하지 않음 adduser 명령은 사용자 홈 디렉토리를 포함한 사용자 관련 설정을 자동생성 함 그래서 일반적인 경우 adduser 명령을 사용한다. sudo adduser 사용자명 useradd를 사용하여 사용자를 생성했을 경우 홈 디렉토리와 패스워드 그 외에도 여러가지 설정을 따로 해주어야 한다. 2020. 2. 19.
vue-moment 적용 및 사용 방법 VueMoment는 VueJS 프레임 워크에서 사용하는 날짜 시간과 관련된 라이브러리다. 본래 moment라는 라이브러리가 있고 이를 Vue에서 사용하기 쉽도록 수정 배포된 버전이고 이를 이용하면 날짜와 시간을 매우 편리하게 사용할 수 있기 때문에 많은 이용자들이 있다. 이제부터 Vue 에서 이를 사용하기 위한 매우 쉬운 방법을 이야기 해 보려고 한다. vue-moment를 설치한다. $ npm install vue-moment 그리고 require를 사용한다면 이렇게 쉽게 적용할 수가 있다. Vue.use(require('vue-moment')); require를 사용하지 않는다면 이렇게 적용하자. import VueMoment from 'vue-moment' Vue.use(VueMoment); vue.. 2020. 2. 16.
spring framework ResourceHandler를 이용한 외부 디렉토리 파일 다운로드 외부 특정 디렉토리에 다운로드 가능한 파일들을 저장해 두고 파일을 다운로드 할 수 있도록 하는 방법이다. 컨트롤러를 만들어 하는 방법도 있겠으나 Recource를 이용하여 별다른 컨트롤러를 따로 만들지 않고도 구현 가능하다. WebMvcConfigurer를 통해 리소스 디렉토리를 지정하면 된다. @Configuration public class ResourceConfig implements WebMvcConfigurer { final Path FILE_ROOT = Paths.get("./project_files").toAbsolutePath().normalize(); @Override public void addResourceHandlers(ResourceHandlerRegistry registry) {.. 2020. 2. 16.
Spring에서 MultipartFile로 파일 저장 / 다운로드 UPLOAD spring-framework MVC controller 에서 파일을 전송받을 아래와 같이 MultipartFile 형태를 사용하게 된다. @PostMapping(value = "/upload", consumes = {MediaType.MULTIPART_FORM_DATA_VALUE}) public ResponseEntity addFiles(MultipartFile file) { ... return ResponseEntity.ok(null); } 파일을 저장하는 방법은 여러가지 이지만 아래와 같은 Method를 만들어 구현해 둔다면 편하게 호출하여 활용할 수 있다. public void saveFiole(MultipartFile file, String directoryPath) throws I.. 2020. 2. 15.
웹에서 3D 단백질 모델 그리기 업무의 특성상 웹 화면에 단백질 3D 모델을 표현해야 한다. 방법을 몰라 이리저리 고민하게 되었다. MD (Molecular Dynamics) 관련 작업을 하다보니 어쩔 수 없는 일이었다. 구글신은 모든 것을 알고 계신다! 검색만이 답이다. 구글을 돌리고 돌리고 또 돌리고 링크를 타고 타고 또 타고 다니며 알게 된 사이트 들이 몇가지 있다. 아래의 목록이 그 결과이다. 1. PV – JavaScript Protein viewer (MIT license) https://biasmv.github.io/pv/ 2. JMOL (GNU license) http://jmol.sourceforge.net/ 3. NGL (MIT license) https://github.com/arose/ngl 4. Molsoft h.. 2020. 2. 13.