목록프로그래밍/JAVA (6)
좋은 프로그램은 마음의 여유에서 나온다.
https://projectlombok.org/ 어노테이션으로 자바의 불필요한 코드인 getter, setter, equals, hashcode, toString 등을 생성해주는 프로젝트. 인텔리제이 플러그인 설치 (https://plugins.jetbrains.com/plugin/6317-lombok-plugin) Preferences -> Plugins -> Browse repositories... -> Lombok Plugin 검색하여 설치, 인텔리제이 재시작 Annotation Processor 설정 Preferences -> Build, Execution, Deployment -> Compiler -> Annotation Processors -> Enable annotation processin..
1. 인텔리제이 플러그인 설치 Preferences -> Plugins -> Install JetBrains Plugin -> Scala 설치 인텔리제이 재시작 2. 스칼라 프로젝트 생성 인텔리제이를 다시 실행하고 첫화면에서 Create New Project 클릭 Scala 프로젝트 선택 -> Next Project name 입력 후 하단의 Scala SDK에서 [No library selected] 라고 나오면 오른쪽에 create 선택 하단에 Download 선택 다운로드할 스칼라 버전 선택. 현재 최신 2.12.0 다운로드 진행 다운로드가 완료되면 스칼라 SDK가 설정되고 Finish를 눌러 프로젝트를 생성. 3. 스칼라 프로그램 작성 프로젝트가 생성되면 src에서 마우스 우 클릭후 New -> S..
JVM 옵션. 하나씩 천천히 공부해가보자. 힙 옵션 -Xms jvm의 최소 힙사이즈 (예 256mb로 설정 -Xms256m)-Xmx jvm의 최대 힙사이즈 (예 1gb로 설정 -Xmx1G)-Xss 스레드마다 할당되는 stack size 설정 (예 256kb로 설정 -Xss256k)-Xnm 힙의 young 영역의 초기사이즈와 최대 사이즈를 설정한다. young영역은 힙의 일부이므로 힙사이즈보다 작아야 함. young 영역 사이즈가 너무 작으면 빈번하게 minor gc가 발생할 것이고 너무 크면 full gc만 일어나므로 적절히 설정해야 하며 오라클의 추천은 힙 사이즈의 1/2 ~ 1/4로 설정(참고)하라고 한다. (예 256mb로 설정 -Xmn256m) 가비지 콜렉터 옵션 -XX:+PrintGC 가비지 콜..
스프링 부트에 jolokia 설정 메이븐 디펜던시 추가 org.jolokia jolokia-core node.js jolokia 클라이언트 https://github.com/jolira/jolokia-client $ npm install jolokia-client jvm 메모리 읽어오기 var jolokia = require('jolokia-client'); var client = new jolokia('http://localhost:8080/jolokia'); client.read('java.lang.type=Memory', function (res) { if (res) { console.log(JSON.stringify(res); } }); 한번에 여러개 요청하기(내부적으로 루프) var joloki..
우분투 $ java -XX:+PrintFlagsFinal -version | grep -iE 'HeapSize|PermSize|ThreadStackSize' byte 단위로 표시됨
http://kin.naver.com/knowhow/detail.nhn?docId=527939 초보들이 하기 쉬운 실수??http://blog.javarouka.me/2011/09/new-string.html 잘못된 코드출처 : http://blog.javarouka.me/2011/09/new-string.html String convert = new String(message.getBytes("euc-kr"), "utf-8"); message라는 String객체를 "euc-kr"로 인코딩된 byte배열을 갖구와서 String 객체를 생성하는데 이때 두번째 매개변수인 "utf-8"의 의미는 euc-kr을 utf-8로 변환한다는 의미가 아니라 첫번째 매개변수가 utf-8로 인코딩되있다고 명시해주는 매개변수..