본문 바로가기
반응형

전체 글739

(java) ltrim 구현 private final static Pattern LTRIM = Pattern.compile("^\\s+"); tip. \\s+$ private String ltrim(String s) { return LTRIM.matcher(s).replaceAll(""); } ^ : 시작. \s : 공백. + : 하나 이상. 매칭되는것 없애준다. 끝. 2015. 6. 30.
crontab+python3 crontab 내용 */1 * * * * /acet/terrypark/run_agitData.sh >> /acet/terrypark/getAgitData2.log run_agitData.sh 내용 #!/bin/bash source ~/.bash_profile /opt/python3/bin/python3 /acet/terrypark/getAgitData.py 크론탭은 환경변수를 인식못하기 때문에 shell을 하나 생성하여 .bash_profile과 실행한 파이썬을 걸어준다. 단, 절대경로를 사용하는게 좋다. - 끝 - 2015. 6. 30.
python??? https://www.python.org/downloads/mac-osx/ 에 가셔서 파이썬 3.x를 다운 받습니다. IDE를 켜고~파이썬 SDK를 잡아줍니다. MAC은 아래의 경로에 셋팅이 되어지네용~@-@;;localhost:bin terrypark$ pwd/Library/Frameworks/Python.framework/Versions/3.5/bin 여기까지 일단~ 2015. 6. 22.
이펙티브자바 규칙 19) 2015년 6월 21일- 일요일 스터디 카페 방문 1. 이펙티브 자바 읽기(범위 : 규칙19,20,21) 인터페이스는 클라이언트 입장에서 보면 “알림이?(명세) 역할"을 한다. 즉, class로 구현할 것을 인터페이스는 미리 말해준다. 인터페이스 사용법 중에 실패한 것은 메소드도 없고 static final field만 존재하는 소위 "constant interface” 라 불린다. // Constant interface antipattern - do not use! public interface PhysicalConstants { // Avogadro's number (1/mol) static final double AVOGADROS_NUMBER = 6.02214199e23; // Boltzmann constant (J/K) static final d.. 2015. 6. 21.
2015년 06월 17일 이펙티브자바 스터디. 스터디 범위 : 이펙티브 자바 규칙17. 참여인원 : 총 5명 - 테리팍, 호이루팍, 빅터신, 지니유, 아론킴상속을 위한 설계와 문서를 갖추거나 그럴수 없다면 상속을 하지말라!?? 재정의 기능 메소드를 내부적으로 어떻게 사용하는지(self-use) 반드시 문서에 남기라는 것. - 더 쉽게 풀어서 말하면 메소드 내부동작 원리에 관한 주석을 남기라는 뜻. 토론) java doc 이야기 테리팍 : java doc을 남기는 것은 좋은 것 같다. 이유 : 이력관리도할 수있고, 더 나아가 CI서버에서도 사용할 수 있다. 또한 개발 전후에 유용할 것 같다. 호이루팍 외 3명 : 이력은 커밋로그나 히스토리를 통해서 보면 되지 않는가? java doc은 관리가 안된다. 빅터신 : 주석(java doc)은 필요한 것만 즉.. 2015. 6. 17.
Favor composition over inheritance 참조 site : http://uet.vnu.edu.vn/~chauttm/e-books/java/Effective.Java.2nd.Edition.May.2008.3000th.Release.pdf 여기에서 말하는 상속의 범위 - extends!! interface implements는 아니다. 상속은 코드 재사용에 대해서 파워풀하지만 항상 좋은것만은 아니다. : 상속을 적절히 잘 사용하지 못하면 소프트웨어는 깨지기 쉽다. 잘 사용하려면? 같은 프로그래머가 같은 패키지 안에서 사용하면 안전하다(당연한거 아닌가..-_-;;) 여러사람이 사용하더라도 상속을 고려해 설계되고 그에 맞는 문서를 갖춘 클래스에 사용하는 것은 안전! 메서드 호출과 달리, 계승은 캡슐화 원칙을 위반한다. : 하위 클래스는 상위클래스의 구.. 2015. 6. 16.
String을 날짜 포맷으로 변환하기! String을 날짜 포맷으로 변환하기! regTime : 20150522141253 reqTime : 20150428234211 위와 같은 String형식을.. 2개의 format을 선언 한 뒤 DateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmss"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); 아래처럼 작업을 해주면 됩니다. try { outputMap.put("작업일", sdf.format(formatter.parse(regTime))); outputMap.put("신청일", sdf.format(formatter.parse(reqTime))); } catch (Parse.. 2015. 6. 15.
clone을 재정의할 때는 신중하라! Cloneable : Note that this interface does not contain the clone method Even if the clone method is invoked reflectively, there is no guarantee that it will succeed. 단점 : 기본적인 문제는 clone메소드가 없으며 Object의 clone메소드가 protected로 선언되어 있다는 것이다. 리플렉션(reflection)을 사용하지 않고서는 Cloneable을 구현한 객체라도 clone 메소드를 호출할 방법이 없다. 리플렉션을 사용한 호출도 실패할 가능성이 있다. 해당 객체에 호출 가능한 clone메소드가 구현되어 있으리라는 보장이 없기 때문. 참고내용 접근 제어자 구분 mod.. 2015. 6. 11.
hashCode() HashCode란?객체를 구별하기 위해, 고유한 정수값으로 출력시켜주는 메소드가 바로 hashCode()다.객체 참조 변수를 출력할 때, 출력되는 Reference Address는 바로 이 hashCode를 16진수로 출력한 값이다.ex) HashCodeTest@cb788b90(참고 사이트 : http://mwultong.blogspot.com/2008/02/16-2-10-8-hex-calc.html) 모든 클래스는 java.lang.Object의 하나의 기본이 되는 hash scheme를 상속 받는다.클래스는 implementation을할 때(equals 같은 method overriding을 뜻한다) public int hashCode()를 반드시 override해야한다.여기서 일반적인 규약이 있다... 2015. 6. 7.
2. mysql process 상태 리스트 보기 리스트 보기 SHOW PROCESSLIST; 해당 프로세스 죽이기KILL 프로세스 번호(ID) 2015. 5. 26.
1. 테이블 복사하기 몇년만에 db를 만져보는거 같다ㅋㅋㅋ;;작업을 위해 백업 테이블을 만들자! 1. 테이블 복사! gogo~! CREATE TABLE [생성할 테이블] SELECT * FROM [원본테이블] 2. 검증 SELECT * FROM [생성된 테이블] LIMIT 100 - 끝 - 2015. 5. 12.
PermGen / java.lang.OutOfMemoryError Java heap 또는 heap의 특정 영역에 객체를 할당할 수 있는 공간이 충분하지 않을 때 발생.참고 글 : 2014/05/15 - [Language/Java] - [Java] JVM 메모리 구조 보통 톰캣 같은 곳에서 설정 때 보면 PermGen이라는 친구가 있다. 이녀석은 permanent generation라는 뜻이고 출처 : http://dic.daum.net/ 클래스와 메소드 객체가 저장되는 heap의 영역이다.어플리케이션이 많은 수의 클래스를 로드하면 -XX:MaxPermSize옵션을 사용하여 PermGen의 크기를 증가 시킬 필요가 있다. 유닉스같은 서버에 톰캣을 셋팅해서 사용하신다면 톰캣의 catalina.sh 파일에 추가 하면 된다. 예) JAVA_OPTS="$JAVA_OPTS -se.. 2015. 3. 25.
value too great for base (error token is 08 ) 오류 내용value too great for base (error token is 08 ) 등의 블라블라~ 참고 사이트 :http://stackoverflow.com/questions/12821715/convert-string-into-integer-in-bash-script/12821845#12821845 해결책hour=8 echo $(( ${hour#0} +1 ))위처럼 #0을 붙여주면 된다. - 끝 - 2015. 2. 4.
좋은 링크 모바일 관련http://troy.labs.daum.net/ 아이디어가 필요한가요?http://idea.crevate.com/ my githubhttps://github.com/acetaeha 마튼파울러 횽님 https://martinfowler.com/eaaCatalog/ about mvc patternhttp://www.kiet.edu/KIETIJICI/Vol1issue1/6.pdf 2015. 2. 4.
(info) vagrant commands 내역1. 로컬에서 하둡을 간단히 돌려서 프로그래밍을할 수 있는 환경을 만들고 싶음.2. vagrant로 단일 하둡 셋팅 함.3. 우분투 관련 오류 발생 함. 오류recommended that you fix the library with 'execstack -c ', or link it with '-z noexecstack'. http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu-linux-single-node-cluster/ vagrant 명령어Usage: vagrant [options] [] -v, --version Print the version and exit. -h, --help Print this help. Common commands:.. 2015. 2. 4.
[꿀팁] 하둡 inputPath로 다중 File 작업하기 [그림 - 1 : 안구정화용~~] // 참고 소스~~ // 아래처럼 path 들을 list에 넣어준다.List inputPath = new ArrayList(); inputPath.add(otherArgs[0]+"/01_acet.clicklog_mo"); inputPath.add(otherArgs[0]+"/02_acet.clicklog_mo"); // 입출력 데이터 경로 설정 //FileInputFormat.addInputPath(job, new Path(otherArgs[0]));for(String input : inputPath){ // list에 담겨져있는 path들을 하나씩 넣어준다. FileInputFormat.addInputPath(job, new Path(input)); } 나의 의문은 현재.. 2015. 2. 4.
[Hadoop] 하둡 맵-리듀스 따라잡기 맵-리듀스! 이녀석을 알아가기 위해 정리를 하나씩 해보려고 한다. 가장 쉬우면서도 어려운 맵-리듀스 소스 짜보기! 1. Maven 설정 org.apache.hadoop hadoop-core 1.2.1 junit junit 4.11 2. runner : runner는 우선 map, reduce, data format등 그리고 run을 통해 시작 시킬수 있는 친구라고 생각하고 넘어가자. 아래의 소스는 가장 단순한 형태 이다. 보통 책에 나오거나 튜토리얼에 나오는 소스 형태! 중요한 것은 runner보다 map과reduce!public class MoClickDistributionChartRunner extends Configured implements Tool { public MoClickDistributi.. 2015. 2. 2.
젠킨스 빌드 오류 빌드 시에 아래와같이 PermGen space오류가 났습니다. ㄷ ㄷ ㄷ 톰캣에서 바꿔줘야하네요! 2015. 1. 16.
about svn:externals svn에서 svn:externals라는 것이 있다 svn:merge등 다양하다! svn:externals는 편집하여 체크아웃이나 업데이트 받을 때 외부 모듈을 함께 받는 것이다. IDE마다 다르지만..인텔리J에서는 아래와 깉이 설정 및 확인을할 수 있다. 설정을 바꾼 뒤에는 커밋을 해주어야 반영이 된다. 이클립스만 쓰다가 인텔리J를 사용하니..엄청 어리버리까고 있다..ㅠ_ㅠ 쿨럭~ 커밋도 안치고 반영된줄..ㄷㄷ 암튼 어리버리까지말고 똑똑해지자~~~ 끝. 2015. 1. 15.
Jenkins Setting 1) Jenkins 설치Jenkins는 http://jenkins-ci.org/ 에 가서 다운!가장 최신으로 다운로드 함! 톰캣 다운로드 및 jenkins war 넣어주기!톰캣 8은 자동으로 안풀렸다..war가..ㄷㄷ 그래서 7로 다운해서 셋팅!참고 : 83번 게시물 결과는 아래! - 끝 - 2015. 1. 15.
메이븐 install 시에 테스트 건너뛰기 명령어 위처럼 -Dmaven.test.skip=true를 추가해주면 된다.또는 아래처럼 maven에 추가 해주면 된다. true 2015. 1. 14.
반응형