본문 바로가기

Happyer16

(314)
포토샵 영문판으로 바꾸기 1. D:\AdobeCS6\Adobe Photoshop CS6 (64 Bit)\Locales\ko_KR\Support Files 이동 2. tw10428.dat > tw10428h.dat 으로 변경 3. 재실행
#0. OPENSHIFT 이해를 위한 배경지식( 컨테이너 ) 1. OPENSHIFT 공부를 왜 시작하게 되었는가? 웹 어플리케이션 개발중인 고객사에서 OpenShift를 쓴다고 하여 처음 접하게 되었다. 고객사는 우리팀의 제품( web 화면 개발 framework)으로 개발된 소스들도 OpenShift로 관리하고 운영하고 싶다는 것이다. 여기서 몇가지 궁금증이 생겼다. 왜 OpenShift를 사용하게 되었는지? ( 알아봐야 함 )결국 고객사의 요청에 대응하기 위해서 OPENSHIFT를 이해해야 된다. 2. OPENSHIFT가 무엇인가? 먼저 Openshift의 홈페이지에 들어가 정의를 살펴보았다. " 오픈시프트는 기업에게 Docker와 Kubernaetes를 제공해주는 컨테이너 어플리케이션 플랫폼이다. " 오픈시프트 기본 정의에 내가 모르는 용어 3개가 나왔다. ..
데이터 바인딩이란? 1. 데이터 바인딩이란? - 데이터 바인딩은 왜 필요한가? 어플리케이션에서 '화면에 있는 객체'와 '데이터'를 일치시키는 일은 중요하다. ( 개발 경험이 없을 때는 이게 당연한 줄 알았다. 데이터를 보여주는건 당연하니까 ) 일반 어플리케이션 ( ex: SWT,jFace 이용 ) 에서는 바인딩이 자연스러운데 웹에서는 왜 이래? 웹 출발 시점에는 사용자와의 양방향 상호작용을 가정한 것이 아님 이 작업을 도와주는 것이 데이터 바인딩 2. 기본 웹 기술의 데이터 바인딩 - framework 없이 데이터 바인딩 해보기 해야 할 일 사용자가 입력한 정보를 얻어옴 찾아온 데이터를 갱신 위의 일을 위해서 DOM API나 jQuery를 사용함 예제) input 태그 안의 keyup 이벤트가 발생할 때 마다, 해당 inp..
Memory leak 문제 해결 문제 TOP가 메모리를 3GB까지 잡아먹는 괴물이 되고, 프로세스가 뻗어버리는 문제 [ TOP Heap 메모리 캡쳐 화면 ] VisualVM JDK에 설치된 메모리 분석 도구 ( TOP가 사용하는 JDK의 bin에 있음 ) Heap memory 관리가 어떻게 됨? 메모리 분석을 하기전에, JVM이 메모리 관리를 어떻게 하는지도 모르는데 무엇을 하겠는가. Heap memory 관리 이해하기 JVM은 OS로부터 java heap memory를 할당하고 자바 어플래케이션을 위한 heap을 관리한다. 어플리케이션이 새로운 object를 만들 때, JVM은 이것을 저장하기 위해 heap memory의 인접 영역에 하위 할당한다. 다른 객체에 의해 참조되고 있는 힙에 있는 객체 , 계속 참조되고 있으면 힙에 남아있..
java.lang.ClassNotFoundException: jdk.nashorn.internal.runtime.ECMAException cannot be found by org.eclipse.wst.jsdt.core 문제 java.lang.NoClassDefFoundError: jdk/nashorn/internal/runtime/ECMAExceptionjava.lang.ClassNotFoundException: jdk.nashorn.internal.runtime.ECMAException cannot be found by org.eclipse.wst.jsdt.core_2.0.0.v201605200022 원인 ClassLoader가 제대로 동작하지 않음 ( 클래스로더에 대한 공부 - http://happyer16.tistory.com/94 ) Nashorn 은 Java 8+ /lib/ext 폴더에 있는 자바스크립트 런타임 라이브러리이다.이클립스 플러그인들은 Boot class loader를 사용하는데, 이는 lib/ex..
Platform architecture ( 이클립스 플랫폼 아키텍처 ) Eclipse documentation 번역 Platform architecture 이클립스 플랫폼은 플로그인의 개념에 따라 구성되어 있다. 플러그인들은 시스템에서 하나의 기능을 하는 코드의 묶음으로 구성되어 있습니다. 기능은 코드 라이브러리 형태, 플랫폼 extension, documentation의 형태 로 제공됩니다. 플러그인은 다른 플러그인에서 기능을 추가할 수 있도록 해주는 extension point를 정의할 수 있다. Eclipse SDK는 기본적인 플랫폼에다가 plugin 개발에 용이한 두가지 주요 툴을 포함하고 있다. JDT ( java development tool)는 자바 개발 환경을 구현한다. PDE ( plugin developer environment ) 는 plugin과 ext..
ClassNotFoundException ( 클래스 로더 정리 ) 문제 TOP 구동이 안된다...... java.lang.ClassNotFoundException: org.eclipse.osgi.compatibility.state.Activator at java.net.URLClassLoader.findClass(Unknown Source) ClassNotFoundException이 뭔데? Class.forName methodClassLoader.findSystemClass methodClassLoader.loadClass method 위와 같은 함수에서 클래스를 로딩할 때 예외가 발생하면 해당 에러를 던져줌. 즉 java class를 못찾거나 runtime에 클래스를 로드할 수 없는 경우이다. Class Loader가 뭔데? [ Oracle Docs 해석 ] Clas..
#코인넘버원 5회 - 숫자로 풀어보는 가상화폐 이야기 정리 및 후기 5.28. 한국프리미엄 ( 한국에서 거래되는 가격이 더 비싼 경우 ) 때문에 차익을 노리는 외국 매도세력이 몰려 가격이 폭락한 시절 근래에도 ( 적금깨고 내가 ETH 구입한.... ) 폭락한 경우가 있었음. 2 2010년 5월 18일 비트코인 만개로 피자 2판을 샀던 시절..... 50 사토시가 첫 블록(제네시스블록) 채굴 후 보상으로 50비트코인 획득. 채굴보상은 누가 정하나? 처음 설정될 때 반감기를 고려하여 채굴 보상량을 정해놓음. 채굴보상은 기존 경제와는 다른 개념이다. 인플,디플레이션를 인위적으로 유도할 수 없다. ( 기존 경제의 개념은 하단 URL 참고 )https://www.youtube.com/watch?v=1_0li7LByTM 3조 국내 가상화폐 하루거래 금액이 코스닥 거래금액을 넘었음...
#6. AOP 6단원 공부하기 전에 AOP는 스프링을 공부하면서 IoC/DI, 서비스 추상화와 함께 나오는 스프링 3대 기술 중의 하나다. 항상 뒤에 나오고 가장 어려운 내용이라 제대로 공부를 하지 못했다. AOP를 제대로 사용하려면 스프링이 도입한 이유와 장점이 무엇인지 이해해야 한다. AOP의 적용 대상은 선언적 트랜잭션 기능(???)이다. AOP를 통해서 5단원에서 공부했던 코드를 더욱 더 깔끔한 방식으로 바꿀수 있다고 하네..... 6.1 트랜잭션 코드의 분리 5단원에서 서비스 추상화 기법을 통해 트랜잭션 기술에 독립적으로 만들어줬지만, 아직 서비스 코드에 쓸데없이 긴 트랜잭션 코드가 보인다. 그렇다고 이를 제거하기에는 트랜잭션 경계가 비즈니스 로직의 전후에 설정돼야 하는 것이 분명하다. 1) 트랜잭션 경계 설..
export Jar Export Jar 상황 배포 자동화 작업중 특정 java 파일을 execute 하고 싶어 jar 생성 ( 단순히 java를 실행하는 경우 plug-in dependencies를 못 가져와 묶어서 실행이 필요함) 1. jar 만들기 export > jar file > 설정.... ( main class 등등 ) 문제 1. Display class를 못찾네? (plug-in dependencies에 있는 ) 자동으로 포함이 안되는구나? export > runnable jar 로 하면 포함이 됨 해결 완료....