SOLR에서 ClobTransformer를 1.4부터 지원해준다고 한다.
덕분에 오라클의 CLOB타입을 인덱싱하려면 커스텀으로 트랜스포머를 만들어야 한다.
그래서 만들었다.
허접하게 나마.
====================================================================================
import java.io.BufferedReader;
import java.util.List;
import java.util.Map;
import oracle.sql.CLOB;
import org.apache.solr.handler.dataimport.Context;
import org.apache.solr.handler.dataimport.Transformer;
/**
* CLOB to String 변환을 위한 커스텀 트랜스 포머
*
* @since 2009. 3. 12.
*/
public class CustomClobTransformer extends Transformer {
/* (non-Javadoc)
* @see org.apache.solr.handler.dataimport.Transformer#transformRow(java.util.Map, org.apache.solr.handler.dataimport.Context)
*/
public Map<String, Object> transformRow(Map<String, Object> row, Context context) {
List<Map<String, String>> fields = context.getAllEntityFields();
for (Map<String, String> field : fields) {
String clob = field.get("clob");
if ("true".equals(clob)) {
String columnName = field.get("column");
CLOB value = (CLOB)row.get(columnName);
StringBuffer strOut = new StringBuffer();
String str = "";
try {
BufferedReader br = new BufferedReader(value.getCharacterStream());
while ((str = br.readLine()) != null) {
strOut.append(str);
}
} catch (Exception e) {
e.printStackTrace();
}
String stringValue = strOut.toString();
row.put(columnName, stringValue);
}
}
return row;
}
}
'작업노트 > Search Engine' 카테고리의 다른 글
| 오픈소스 검색서버 SOLR 설치 메뉴얼 4 (0) | 2009.04.07 |
|---|---|
| 오픈소스 검색서버 SOLR 설치 메뉴얼 3 (1) | 2009.04.07 |
| 오픈소스 검색서버 SOLR 설치 메뉴얼 2 (0) | 2009.04.07 |
| 오픈소스 검색서버 SOLR 설치 메뉴얼 1 (0) | 2009.04.07 |
| [검색]Solr 관련 (0) | 2009.02.24 |
http://logonjava.blogspot.com/2005/11/noclassdeffounderror.html
http://mwultong.blogspot.com/2006/09/java-exception-in-thread-main.html
'작업노트 > Error Handling' 카테고리의 다른 글
| [Spring] java.lang.NullPointerException (0) | 2008.10.29 |
|---|---|
| 이클립스에서 톰캣을 연동해서 작업할때, server.xml을 수정해도.. (1) | 2008.10.08 |
| Spring] BeanDefinitionStoreException (0) | 2008.09.22 |
| [Oracle] ORA-01461: can bind a LONG value only for insert into a LONG column (0) | 2008.08.07 |
| [iBatis]UncategorizedSQLException (0) | 2008.07.07 |
http://blog.naver.com/greenyon?Redirect=Log&logNo=100055657006
http://blog.naver.com/greenyon?Redirect=Log&logNo=100061128938
'작업노트 > etc.' 카테고리의 다른 글
| http content type (0) | 2009.08.19 |
|---|---|
| NNTP, Usenet, UUCP 간략한 정의 (0) | 2009.04.20 |
| [펌] 2년차 개발자가 알아야 할 기본 지식 (0) | 2009.01.15 |
| 파이어폭스(firefox)에서의 새로고침 (1) | 2008.12.26 |
| [퍼온 글] 서울특별시의회 전자회의시스템 프로젝트 프로그램 개발자 폭행사건 (0) | 2008.10.28 |


