CommonAnnotationBeanPostProcessor...
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor 이 클래스가...
<context:component-scan> 의 역할 중 하나를 맡고 있다라는 걸 어제야 알았다;;;
찾아보니 AutowiredAnnotationBeanPostProcessor 이 클래스도 마찬가지...
쩝;;; 아직 멀었구만...
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor 이 클래스가...
<context:component-scan> 의 역할 중 하나를 맡고 있다라는 걸 어제야 알았다;;;
찾아보니 AutowiredAnnotationBeanPostProcessor 이 클래스도 마찬가지...
쩝;;; 아직 멀었구만...
어쩌다보니 iBATIS 환경도 아니고 하이버네이트 환경도 아닌 부분을 건들게 되었습니다.
다행히 Spring 3 환경이라 Spring JDBC 를 쓰다보니 좀 불편한 부분이 있어 ObjectRowMapper 를 새로 만들어보았습니다.
(이미 있을 수도 있겠지만 검색능력 부족으로...)
public class ObjectRowMapper<T> implements RowMapper<T>
사용법
퍼포먼스라... 일단 빠른 개발이 우선이기 때문에...
후우...
하이버네이트에서 사용할 SQLite Dialect 를 roo 프로젝트에 추가합니다.
아래와 같이 pom.xml 에 SQLite dependency 를 추가합니다.
SQLiteDialect 를 사용하도록 아래와 같이 수정합니다.
DB 접속 정보를 설정합니다. 아래와 같이 database.url 에 DB 파일 위치를 설정할 수 있습니다.
프로젝트를 Tomcat 이나 다른 WAS 를 통해 구동하게 되면 SQLite DB 파일이 생성되게 됩니다. 이 상태로 데이터를 조작하다가 다시 시작하게 되면 DB 가 초기화 되게 됩니다.
첫번째 프로젝트를 구동후에는 다음과 같이 설정을 해야 데이터가 유지되게 됩니다.
위에서 처럼 hibernate.hbm2ddl.auto 의 값을 "update" 로 변경하게 되면 현재 있는 DB 를 수정하게 됩니다. "create" 로 값이 설정되어 있으면 실행할 때 마다 새로운 DB 를 생성하게 됩니다. "validate" 는 정상적으로 동작을 하지 않는 것 같아... "update" 를 권장합니다.
|
Keyword |
Sample | JPQL snippet |
| And | findByLastnameAndFirstname | … where x.lastname = ?1 and x.firstname = ?2 |
| Or | findByLastnameOrFirstname | … where x.lastname = ?1 or x.firstname = ?2 |
| Between | findByStartDateBetween | … where x.startDate between 1? and ?2 |
| LessThan | findByAgeLessThan | … where x.age < ?1 |
| GreaterThan | findByAgeGreaterThan | … where x.age > ?1 |
| IsNull | findByAgeIsNull | … where x.age is null |
| IsNotNull,NotNull | findByAge(Is)NotNull | … where x.age not null |
| Like | findByFirstnameLike | … where x.firstname like ?1 |
| NotLike | findByFirstnameNotLike | … where x.firstname not like ?1 |
| OrderBy | findByAgeOrderByLastnameDesc | … where x.age > ?1 order by x.lastname desc |
| Not | findByLastnameNot | … where x.lastname <> ?1 |
지금까지 Spring Roo 를 디버깅하기 위해 오랬동안 돌아왔습니다.
이제 그 결실을 맞보러~
Spring Roo addon 디버깅
1. 새로운 roo 프로젝트 생성
> roo-dev