본문 바로가기

백엔드

[펌] ivy vs maven 2 비교 자료 예전에 ivy를 사용한 경험이 있는데 요새 뉴스거리에 가끔 maven이 올라 오길래 검색해보았다. maven을 사용해 본 경험이 없어 비교하기가 그랬으나 누군가 경험적 비교를 해놔서 살펴보니.. 난 ivy가 좋을 것 같다... 우스갯소리로 ivy는 dependency 추가가 한줄인데 maven은 5줄이상이다... 여기에서 부터 호불호가 갈렸다;; 경험을 바탕으로 간단히.. maven(maven2) vs ivy 장단점 비교를 해보겠습니다. - 의존성 다운로드 1) ivy : 선택에 의해서 다운로드 가능. 해당 jar외엔 아무것도 받지 않겠다라고 쓸 수 있음. 명시적인 lib 관리 가능 2) maven : 불필요한 jar도 다운받을 수 있습니다. 쓰지 않더라도 선언때문에 다운 받을 수 있고, 상황에 따라서는..
[3.0] forEach 사용 item : forEach내에서 각 아이템 이름으로 사용할 것. index : index collection="classNames" // 배열명 open="" // forEach 시작 전 ex: "(" forEach 시작전에 ( #{item} separator="," // forEach 1회시 구분 해줄 기호 close="" // forEach 종료 후 ex: ")" forEach 종료 후에 ( #{item}, #{item}, #{item} .... #{item[index]} ) SUM(CASE WHEN R.CLASS_NAME = #{item} THEN R.CNT ELSE 0 END) AS #{item}
MySQL AutoReconnect 설정. 참조 : http://hmjkor.tistory.com/176
[3.0] like 검색. - iBatis 3.0 에서 간단하게 like 검색 하는 법 CB.CUSTOMER_NAME like CONCAT('%', #{customerName:VARCHAR}, '%') 사용 예 ) <-select id="expired_search" parametertype="java.util.HashMap" resulttype="net.autobrain.domain.ExpiredSearchResult" flushcache="false" usecache="false"> SELECT CB.COUPON_BOOK_NO, CN.COUPON_NAME_SEQ, CN.COUPON_NAME , CASE WHEN CB.CHARGE_TYPE = 'F' THEN '무상' ELSE '유상' END AS CHARGE_TYPE , AM.A..
[3.0] JDBC Type 쿼리~~ AND (TO_DAYS(CB.COUPON_EXPIRED_DATE) - TO_DAYS(CAST(#{criterionDate} AS DATE)) BETWEEN #{criterionDay1:NUMERIC} AND #{criterionDay2:NUMERIC})
iBatis 3.0 Cache 문제 - 1. Query 실행 후 그 결과를 Map에 담아 리턴해 페이지에 출력. 2. 다른 곳에서 위 출력 결과에 영향을 주는 컬럼 값을 변경한다. 3. 다시 1번을 수행하면 2번의 결과가 반영되지 않고 수정하기 전의 결과가 딱 나온다. iBatis로그가 아닌 일반 로그에서는 호출은 되나 iBatis가 실행되진 않았다. - 조건을 다르게 해서 실행 했을경우 sql을 실행하지만, 결과 값인 Map에는 수정하기 전의 정보가 들어있다. - statementType="CALLABLE" flushCache="false" useCache="false" 모두 헛 수고 왜 그런지 문서좀 뒤져야겠다.. 일단.. iBatis 로그부터 찍어야하고..
[JPA - Error] Multiple writable mappings exist for the field description : only one may be defined as writable all others must be specified read-only Many To One 매핑에서 자주 발생하는 문제이다.. 또한 추가적으로 One쪽 PK가 Many쪽에서도 PK로 사용된다면 JPA 초기 설정된 상태로는 100% 에러난다. A와 B의 관계가 N:1이면 A와 B의 PK들은 아래의 구조를 가지게 된다. //MasterCodes.java (A와 B의 관계에선 A, 즉 Many 쪽 table) @EmbeddedId private MasterCodesPK id; //복합키 @Column(name="CODE_NAME") private String codeName; //생략~~ //bi-directional m..
제네릭이 왜 안되었는지~ 왜 제네릭이 안되었는지 이제 알았다. 확실히... 먼저 제네릭이 안되었을때의 하이버네이트와 매핑한 bean을 살펴보면 @Id @GeneratedValue(strategy=GenerationType.AUTO) public Integer getUserSeq() { return userSeq; } 오류난 로그 2010-01-09 23:06 [DEBUG] opened session at timestamp: 12630460153 2010-01-09 23:06 [DEBUG] about to open PreparedStatement (open PreparedStatements: 0, globally: 0) 2010-01-09 23:06 [DEBUG] opening JDBC connection 2010-01-09 23..