본문 바로가기
728x90

푸닥거리364

php 에서 exec 호출 시 아무 에러 없이 실행 안되는 문제 [출처] http://findstar.tistory.com/76 php에서 exec를 통해서 외부 프로그램을 실행시 출력 메세지를 도통 확인할 수가 없었다. 권한 문제나, nobody의 실행 권한 문제, php.ini 의 safe_mode_exec_dir 설정도 모두 살펴보았지만 특별한 문제가 없었다. 이유는 해당 외부 프로그램이 stdout stderr을 사용하지 않는다는데 있었다. php_ini error_message 를 E_ALL 로 해두었으나, 나타나지 않음 httpd error_log 를 살펴보고서야 거기서 나타난 메세지들을 확인할 수 있었다. 출력되는 out 이 error_log로 연결되어 있었다는 소리. ls 나 다른 기본적인 프로그램을 실행되는데 내가 수행하려는 curl은 안되었다. 마지.. 2013. 8. 14.
mysql 튜닝 최적화 [출처] http://lonmoon.tistory.com/324 mysql> show status; - Aborted_clients : 클라이언트 프로그램이 비정상적으로 종료된 수 - Aborted_connects : MySQL서버에 접속이 실패된 수 - Max_used_connections : 최대로 동시에 접속한 수 - Threads_cached : Thread Cache의 Thread 수 - Threads_connected : 현재 연결된 Thread 수 - Threads_created : 접속을 위해 생성된 Thread 수 - Threads_running : Sleeping 되어 있지 않은 Thread 수 mysql> show variables like '%max_connection%'; +---.. 2013. 8. 8.
ArrayList 중복 카운트 [출처] http://www.cremazer.zz.mu/?p=1020 import java.util.ArrayList;import java.util.Arrays; public class Test { public static void main(String[] args) { /** 원본 데이터 */ int[] data = {10,3,4,50,4,4,1,2,10,10,25,2,10}; /** 원본 데이터 유형 */ ArrayList itemList = new ArrayList(); /** 원본 데이터 유형별 중복개수 */ ArrayList cntList = new ArrayList(); //1. 데이터 유형 및 개수를 설정한다. for(int index = 0 ; index < data.length ; ind.. 2013. 8. 7.
how to convert hash set to an arraylist [출처] http://www.dreamincode.net/forums/topic/261255-another-stumper-how-to-convert-hash-set-to-an-arraylist/ ArrayList list = new ArrayList(mySet); 2013. 8. 6.
show variables [출처] http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html system variable - automatic_sp_privileges : 설정값 1이면 stored routine 을 create 하는 계정에 대해 자동적으로 EXECUTE, ALTER 권한을 할당, 설정값이 0 이면 반대 2013. 8. 2.
RequestMapping 동적 url [출처] http://stackoverflow.com/questions/13366512/spring-mvc-dynamic-requestmapping @RequestMapping(value="/category/{path}/**", method = RequestMethod.GET) public void categoryTest(@PathVariable("path") String path, HttpServletRequest request) throws Exception { String remainingPaths = (String) request.getAttribute(HandlerMapping.PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE); logger.debug("path = " + p.. 2013. 7. 31.
TDD의 리듬 [출처] https://github.com/swtest/agile-korea-2012/wiki/1.-TDD%EC%9D%98-%EB%A6%AC%EB%93%AC 켄트백이 말하는 TDD의 리듬 ① 테스트 하나를 재빨리 추가한다. ② 모든 테스트를 실행하고 새 테스트가 실패하는지 확인한다. ③ (코드를) 약간 바꾼다. ④ 모든 테스트를 실행하고 모두가 성공하는지 확인한다. ⑤ 리팩토링을 해서 중복을 없앤다. ④에서 모든 테스트가 통과하지 못한다면 이전의 ②상태로 코드를 돌리고 다시③을 시도한다. ⑤까지 완료되면 ①부터 다시 시작한다. 2013. 7. 26.
볼링점수 계산법 - 훈련규칙 ( http://elaia.tistory.com/3 )한 메소드에 오직 한 단계의 들여쓰기만 한다.else 예약어를 쓰지 않는다.모든 원시값과 문자열을 포장한다.한 줄에 점을 하나만 찍는다.줄여쓰지 않는다.모든 엔티티를 작게 유지한다.2개 이상의 인스턴스 변수를 가진 클래스를 쓰지 않는다.제일 클래스(first-class) 콜렉션을 쓴다.getter/setter/property를 쓰지 않는다.- 목표 ( http://pann.news.nate.com/info/312194595 , http://www.slipp.net )볼링점수를 계산하는 프로그램을 작성 - 볼링점수계산Strike인 경우는 다음 두번 투구 수의 점수를 합한다. 따라서 이후 두 번 더 투구할 때까지 strike한 프레임의 점수는.. 2013. 7. 26.
객체지향생활체조 [출처] http://elaia.tistory.com/3 - 훈련규칙한 메소드에 오직 한 단계의 들여쓰기만 한다.else 예약어를 쓰지 않는다.모든 원시값과 문자열을 포장한다.한 줄에 점을 하나만 찍는다.줄여쓰지 않는다.모든 엔티티를 작게 유지한다.2개 이상의 인스턴스 변수를 가진 클래스를 쓰지 않는다.제일 클래스(first-class) 콜렉션을 쓴다.getter/setter/property를 쓰지 않는다. - 설명규칙1 : 메소드당 들여쓰기 한번객체지향 기본 원칙 중 하나는 느슨한 결합, 강한 응집력입니다.하지만 덩치가 큰 메소드는 정확한 하나의 일에 집중되어 있지 않기에 응집력이 떨어지며,나중에는 재사용 하기도 어려워 집니다.즉 정확한 하나의 일(하나의 제어구조나 하나의 문장 단락)에만 집중할 수 있.. 2013. 7. 26.
728x90