본문 바로가기

반응형

전체 글

spring @autowired annotaion 동작 - 동작흐름. 1. beanfactory 에서 후보 bean을 가져온다. (by type) - @Qualifier 지정자가 있을 경우, 후보 bean을 지정자와 매치하는 것만 찾음 2-0. 후보가 없으면, 에러 끝.2-1. 1개 일 경우, 반환 끝.2-2. 2개 이상 일 경우. (fallback 상태)이런 경우, fallback 상태로 처리 (is smart?) 2-2-1 각 후보 bean 에서 primary 표시자 유무를 찾는다. (@Primary annotation)있는 경우, primary 로 지정된 bean 을 반환. (2개 이상 primary 로 지정 하면?) 2-2-2primary 조차 없는 경우.filedname(변수명)과 동일한 bean id가 있다면 반환. 2-2-3그것 조차 없으면, 에.. 더보기
mybatis Illegal overloaded getter method java model 객체에 boolean isTestboolean getTest 반환타입이 boolean 메소드에 동일한 getter 가 있을 경우(setter 도 마찬가지)정확한 getter 지정이 필요하다는 에러. 결론은 둘중 하나만 model 에 선언되어야 한다;좀 유연하지 못한 부분이라고 생각 된다. 레거시 코드에 영향도가 큰 경우. (해당 메소드를 참조하고 있는 부분)작업자에게 절망을 충분히 안겨 줄 수 있다; 더보기
union 쿼리 성능 고려. http://intomysql.blogspot.kr/2011/01/union-union-all.html union 쿼리에 사용에 대한 이야기. 검색의 타켓이 되는 테이블이 분산 되어 있는 경우, 1. 해당 n개만큼의 검색 질의를 해서, 애플리케이션에서 merge 과정을 거치던가2. sql 의 union 쿼리를 이용해서 각 테이블의 쿼리를 합계하는 경우가 있다. 2 의 경우, union 쿼리의 사용하기 때문에 성능에 대한 부분이 대두 될 수 있는데. 'merge 대상 테이블의 데이터 중복을 허용 처리' 하면 성능 상에 이득을 볼 수 있다. 다만, 각 merge 할 테이블의 데이터가 unique 함을 유지 할 수 있도록 쿼리의 조건을 명확히 한다면,중복 허용 옵션은 수용 가능한 방법이라고 본다. 더보기
ibatis iterate , mybatis foreach 동적쿼리 비교. http://mybatis.github.io/mybatis-3/ko/dynamic-sql.html 동적쿼리 사용이 ibatis 와 mybatis 간에 차이가 있는 것 같다. ibatis 는 iterate , mybatis 는 foreach (개인적으로는 foreach 구문에 한표.)고로, 둘 간의 쿼리변환을 위해서는 수고가 필요하다. 아래에 간단한 테스를 참조한다. ex)relayKeyList 파라미터는 List 타입이다. ibatisSELECT*FROMTestWHEREuserno = 123AND (( no = CAST(#relayKeyList[].[0]# as numeric(20, 0)) AND no2 = CAST(#relayKeyList[].[1]# as numeric(20, 0)) )) foreac.. 더보기
java SDK 설치 https://ivan-site.com/2012/05/download-oracle-java-jre-jdk-using-a-script/ os 버전에 맞게 wget 다운로드. ex)wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jdk-7u51-linux-x64.tar.gz" 더보기
git를 서버에 설치하기. http://git-scm.com/download/linux에서 os는 맞는 방법으로 진행. 나같은 경우는 cen-os 장비환경. yum install git( what is yum? http://ko.wikipedia.org/wiki/Yum , https://access.redhat.com/site/ko/node/82093 ) 으로 설치하려 했지만.기본적으로 root 권한이 필요해서 sudo 명령으로(http://ko.wikipedia.org/wiki/Sudo) 설치 ex)sudo yum install git 그러면, 설치과정을 물어 보고, y 로 넘기면 설치 완료.완료 후에는 git --version 으로 설치 확인하면 끝~ 더보기
spring retry 간단 예제. 1.우선 라이브러리 부터 추가.maven > pom.xml org.springframework.retryspring-retry1.0.3.RELEASE 2.실제 적용 코드> blabla.java public class blabla implements InitializingBean {static final String KEY = "testKey";private RetryTemplate retryTemplate; private RetryCallback retryCallback;private Client client; @Autowiredpublic blabla(Client client) {this.client= client;} public void setRetryTemplate(RetryTemplate retr.. 더보기
로그/백업용 저장소를 noSQL 기반으로, noSQL 에 활용이 지속적으로 많이 요구 되고, 사용 되어 지고 있다.요즘 계속 redis 를 보고 매력적으로 느끼는 이유도, 최초 탄생 부터 지금 까지 매력적으로 성장 해 왔기 때문이다. 처음 redis 에 대한 느낌은 캐시의 성격이었으나, 그것이 점점 발전하면서, data 저장소의 성격으로 발전되고 있다고 생각한다.그래서, DB를 구성 할 수 있는 형태와 기능이 충분하다고 생각한다. 최근에는 DB관련 작업을 하면서 여러 의견들이 교환되고 있는데.로그성이나 백업성 DB에 대한 논의가 있었다. 문득 들었던 생각은 그러한 유통기한이 정해져 있는, 일정한 시간만 저장하면 되는 데이터에 대한 저장을redis 저장소에 하면 어떨까 하는 생각이 들었다. redis가 제공해 주는 expire 설정을 이용하면. 그.. 더보기