Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- gradle
- kafka streams
- schema registry
- Elk
- 카프카
- aws
- scala 2.10
- kafkastream
- kafkastreams
- coursera
- kafka interactive query
- spring-cloud-stream
- confluent
- statestore
- Kafka
- Logstash
- 한빛미디어
- play framework
- Elasticsearch
- enablekafkastreams
- Spring
- 플레이 프레임워크
- springboot
- avo
- scala
- Slick
- spring-batch
- spring-kafka
- RabbitMQ
- reactive
Archives
- Today
- Total
b
SqlMapClientTemplate 의 내부 본문
public int delete(final String statementName, final Object parameterObject)
throws DataAccessException {
return execute(new SqlMapClientCallback<Integer>() {
public Integer doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
return executor.delete(statementName, parameterObject);
}
});
}
1. 모든 처리를 public execute 메소드가 위임 받는다.
2. public execute 는SqlMapClientCallback<T> action 를 argument로 받는다.
3. delete, queryForObject 등의 위임을 하는 펑션들은 콜백 펑션을 선언해서 execute를 실행한다.
4. 실제적으로 executor 은 SqlMapClientTemplate에 DI된 sqpMapClient에서 가져와 쓰여진다.
이정도가.. 기본 로직인거고.
1. execute가 적절한 예외처리를 해줌으로서 Exception에 대한 부담이 줄어든다.
2. 적절한 공통코드를 알아서 처리해준다(close같은..)
SqlMapClientTemplate은 여러이유에서 SqlMapClient를 래핑한 Helper 클래스 이다.
템플릿 패턴의 모범적인 적용사례(?)
'spring framework' 카테고리의 다른 글
angularjs , $resource 와 spring @requestBody (0) | 2013.11.11 |
---|---|
spring interceptor (0) | 2013.11.05 |
mybatis interface mapper기반에서 HashMap 가져오기. (2) | 2013.09.11 |
DefaultServletHttpRequestHandler (0) | 2013.02.01 |
SpringOne2GX 2012 컨퍼런스 후기 나눔 세미나 (from OLC) (0) | 2013.01.09 |
Comments