ArrayList liad = new ArrayList()
Mapper.selectSolrData(new ResultHandler(){
public void handleResult(RsultContext resultContext){
Map resultMap = resultContext.getResultObject()
SolrInputdocument doc = new SolrInputDocument()
doc.addField("Key","VAlue);
list.add(doc)
if( count >=1000){
SolrSendThread thread = new SolrSendThread(1000,"URL정보")
thread .setDatas(list)
list.clear()
Thread th = new Thread( thread );
th.start();
....
.........
}
}
} , parameterMap)
.............................................
publuc Class SolrSendThread implements Runnable{
private List<SolrInputDocument> dataList
private int second ;
private String url
.
public SolrSendThread(int second , String url )
dataList = new ArrayList<SolrInputDocument>();
this.second = second
this. url = url
}
public synchronized void setData( SolrInputDocument data){
this.dataList.add(data);
}
public synchronized void setDatas( List<SolrInputDocument > data){
this.dataList.addAll(data);
}
.............................
.............................
private void run(){
while(run){
try{
sendData();
Thread.sleep(second);
}catch(.. .. ){
}
}
}
private void sendData (){
if(this.dataList.size() == 0){
return;
}
try{
solr = HttpSolrClient(this.url)
solr.add(this.dataList)
solr.commit();
this.dataList.clear();
}catch(.. .. ){
}finally{
solr.close()
}
}
'IT > frameworks' 카테고리의 다른 글
node.js 부트스트랩 활성화 (0) | 2020.05.12 |
---|---|
mybatis & ibatis (0) | 2019.02.04 |
JNLP Java App 서명 및 Key (0) | 2018.11.16 |
Tomcat Start Multi Bat (0) | 2018.11.16 |
maxInMemorySize,maxUploadSize 파일 업로드 제한 (0) | 2018.11.16 |