python 에서 한글 표현하기
* 선언부 # -*- coding: utf-8 -*- * 용례 s.decode(‘utf-8’).encode(‘euc-kr’)
* 선언부 # -*- coding: utf-8 -*- * 용례 s.decode(‘utf-8’).encode(‘euc-kr’)
* jackson 2.7 버전 사용시 spring 4.3 버전 미만이면 오류가 발생한다.
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=포트번호 -Dcom.sun.management.jmxremote.rmi.port=포트번호 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.local.only=false 위와 같이 하면 왠만하면 되는데, 그래도 안된다면 아래의 옵션도 추가해 보자. -Djava.rmi.server.hostname=서버IP
https://spring.io/blog/2012/05/07/spring-mvc-3-2-preview-introducing-servlet-3-async-support
JMXServiceURL url = new JMXServiceURL(“service:jmx:rmi:///jndi/rmi://0.0.0.0:9001/jmxrmi”); JMXConnector jmxc = JMXConectorFactory.connect(url, null); MBeanServerConnection mbsc = jmxc.getMBeanServerConnection(); ObjectName gatewayObjName = new ObjectName(“org.bruce.test:name=TestServiceManaged”) mbsc.invoke(gatewayObjName, “testRemoteMethod”, null, null);
Main thread 에서 System.exit(0)를 사용하면 의미가 없고, 별도의 thread에서 System.exit(0)를 호출해야만 JVM을 종료할 수 있다.
java.util.Collection의 retainAll()과 removeAll()을 사용하여 두 List를 비교할 수 있다.
java… 에는 없는 것 같고, apache commons StringUtils.stripEnd() 를 사용하자!!
Connection reset by peer (혹은 “peer로 연결 재설정”) 이 메세지는, 잘은 모르지만 느낌상 Netty에서 뿌려주는 메세지처럼 보인다. 내 경우에는, 연결을 유지하는 소켓통신을 사용중, 거래가 없기 때문에 상대방이(서버) 연결을 끊은 경우 (상대방 방화벽/어플리케이션 에서 자동으로 연결종료?), 내 쪽 (클라이언트) 에서 이 메세지를 볼 수 있었다. 검색을 좀 해 보니, 이것은 상대방이 TCP RST 패킷(리셋)을 보낼… Read More »
* 실제로 이렇게 사용하는 것이 괜찮은가 하는 것은 잘 모르겠으나, 일단 한 번 구현해 보았다. public static final Charset CHARSET_EUC_KR = Charset.forName(“EUC-KR”); public static final String KSC5601_START_HEX = “A1A1”; //EUC-KR 코드페이지 내에서 KSC5601의 시작코드 public static final String KSC5601_END_HEX = “FEFE”; //EUC-KR 코드페이지 내에서 KSC5601의 종료코드 public static final int KSC5601_START_INT = Integer.parseInt(KSC5601_START_HEX, 16); public… Read More »
나도 잘은 모르겠으나… 해당 메서드의 implementation 에서 checked exception을 throw 하는 API를 호출할 가능성을 배제할 수 없으므로, (ex: 외부 라이브러리 메서드 호출), 이 부분은 그냥 유지하는 게 좋지 않을까 싶다.
Scanner scanner = new Scanner(System.in); while(true){ System.out.println(“실행할 서비스를 선택하세요 : “); String input = scanner.nextLine(); //block loop try{ //input 값으로 분기하여 필요한 로직 수행 //이 안에서 Exception 발생 가능성 있음 }catch(Exception e){ scanner.reset(); //Exception이 발생해도 중지되지 않고 계속 입력을 받을 수 있도록 처리 } }
로컬에서 잘 돌던 A.java 파일이 개발서버에서 Runtime시 NoClassDefFoundError 를 뿜고 있었다. 에러로그를 보니 A.java 가 외부 라이브러리 클래스 (jar 에 포함된 클래스) B.class 의 static method 를 호출하는 순간이었는데, 문제는 B의 static method가 JNI library(*.so 파일)를 호출하는데, JVM을 실행시킨 user의 권한이 *.so 파일을 실행시키는데 부족했기 때문이었다. 그래서, 해당 *.so 파일들의 권한을 750 => 755 로 모두… Read More »
* 하위 module을 갖고 있는 module에서 config와 run의 실행 시점 (1) 하위 의존성 module들의 config 콜백 실행 (2) 의존성 module들의 config 실행이 모두 완료된 후, 상위 module의 config 콜백 실행 (3) 하위 의존성 module의 run 콜백 실행 (4) 의존성 module들의 run 실행이 모두 완료된 후, 상위 module의 run콜백 실행 * constant와 value의 차이점 – 거의… Read More »
* 환경 node.js v0.12.4 1. node.js 커맨드창에서 아래의 명령 실행 npm install connect static-server 2. 웹서버 런칭 js파일 작성 (server.js) var connect = require(‘connect’); var serveStatic = require(‘serve-static’); var port = 5000; connect().use( serveStatic(‘C:/nodejsweb’) //document root로 사용할 물리 경로 ).listen(port); console.log(“Static file server running at\n => http://localhost:” + port + “/\nCTRL + C… Read More »
* jstack [PID] > dump.txt 로 스레드덤프 추출 * 일단 BLOCK이 있는지 검사해 보자
* jQuery ajax 로 jsonp 요청시 크롬 개발자도구 상태 Content-type 없음 Accept는 */* 이 됨 network 탭에서 xhr이 아닌 script로 조회됨. method type에 관계 없이 get 요청이 됨.
* 접근 불가능한 필드에 접근하기 Map<String, Field> fieldMap = new HashMap<String, Field>(); Field[] fields = Example.class.getDeclaredFields(); for(Field f : fields) { fieldName = f.getName(); f.setAccessible(true); fieldMap.put(fieldName, f); } * 필드에 접근해서 값 셋팅하기 //this는 fieldMap에 해당하는 멤버를 지닌 객체 fieldMap.get(“returnMsg”).set(this, “success”);
public class NumberUtility { private static final Log LOG = LogFactory.getLog(NumberUtility.class); public static final BigDecimal INT_MIN_IN_BIGDECIMAL = new BigDecimal(Integer.MIN_VALUE); public static final BigDecimal INT_MAX_IN_BIGDECIMAL = new BigDecimal(Integer.MAX_VALUE); public static final BigDecimal LONG_MIN_IN_BIGDECIMAL = new BigDecimal(Long.MIN_VALUE); public static final BigDecimal LONG_MAX_IN_BIGDECIMAL = new BigDecimal(Long.MAX_VALUE); /** * 생성 금지 */ private NumberUtility(){} /** * Object를… Read More »
javascript object를 query string으로 변환해 주는 jQuery의 $.param() 함수 사용중, 값이 배열인 데이터를 query string으로 변환할 때 파라미터명 뒤에 “[]” 문자열이 붙는 현상이 있었다. 이 때, $.param() 함수의 두 번째 인수로 true 값을 주니 이 현상을 해결할 수 있었다. (ex: var qryStr = $.param(jsonObj, true); )