POJO Class 에 @Springfield 을 선언하면 Generic 류의 Controller / Service / Repository Bean 을 생성하여 CoC 에 의해 "~Controller", "~Validator", "~Service", "~Repository" 라는 Bean Name 으로, springframework 의 applicationContext에 등록 한다.
자동 생성, 등록 되는 Bean 종류 및 구현체는 strategy 속성 값에 따라 결정된다.
Springfield Strategy | bean name | bean type | bean implement |
---|---|---|---|
SQLSESSION | "~Controller" | EntityController<T,Q> | com.u2ware.springfield.controller. EntityHandler |
"~Validator" | EntityValidator<T,Q> | com.u2ware.springfield.validation. EntityValidatorImpl | |
"~Service" | EntityService<T,Q> | com.u2ware.springfield.service. EntityServiceImpl | |
"~Repository" | EntityRepository<T,ID> | com.u2ware.springfield.repository.sqlsession. EntitySqlsessionRepository | |
JPA | "~Controller" | EntityController<T,Q> | com.u2ware.springfield.controller. EntityHandler |
"~Validator" | EntityValidator<T,Q> | com.u2ware.springfield.validation. EntityValidatorImpl | |
"~Service" | EntityService<T,Q> | com.u2ware.springfield.service. EntityServiceImpl | |
"~Repository" | EntityRepository<T,ID> | com.u2ware.springfield.repository.jpa. EntityJpaRepository | |
MONGODB | "~Controller" | EntityController<T,Q> | com.u2ware.springfield.controller. EntityHandler |
"~Validator" | EntityValidator<T,Q> | com.u2ware.springfield.validation. EntityValidatorImpl | |
"~Service" | EntityService<T,Q> | com.u2ware.springfield.service. EntityServiceImpl | |
"~Repository" | EntityRepository<T,ID> | com.u2ware.springfield.repository.mongodb. EntityMongodbRepository | |
DTO | "~Controller" | EntityController<T,Q> | com.u2ware.springfield.controller. EntityHandler |
"~Validator" | EntityValidator<T,Q> | com.u2ware.springfield.validation. EntityValidatorImpl | |
"~Service" | EntityService<T,Q> | com.u2ware.springfield.service. EntityServiceImpl | |
SQLSESSION _REPOSITORY_ONLY | "~Repository" | EntityRepository<T,ID> | com.u2ware.springfield.repository.sqlsession. EntitySqlsessionRepository |
JPA _REPOSITORY_ONLY | "~Repository" | EntityRepository<T,ID> | com.u2ware.springfield.repository.jpa. EntityJpaRepository |
MONGODB _REPOSITORY_ONLY | "~Repository" | EntityRepository<T,ID> | com.u2ware.springfield.repository.mongodb. EntityMongodbRepository |