zoukankan      html  css  js  c++  java
  • solr dataimport 数据导入源码分析(二)

    上文说由DataImporter类进一步处理,DataImporter类的简要代码如下

    /***********************************************************************

     * Module:  DataImporter.java

     * Author:  Administrator

     * Purpose: Defines the Class DataImporter

     **********************************************************************
    */



    import java.util.*;



    /** @pdOid 6bcd8340-c69a-4f17-b886-2c530258bdb6 */

    public class DataImporter {


       /** @param key 

        * 
    @param name 

        * 
    @param ctx

        * @pdOid f7657de8-0309-4376-895f-ee6d10261de2 
    */

       DataSource getDataSourceInstance(DataConfig.Entity key, String name, Context ctx) {

       DataSource dataSrc = new JdbcDataSource();

       return DataSource;

       }

       

       /** @param reqParams 

        * 
    @param sw

        * @pdOid d62e4f04-48dc-485b-bb00-be1a56117e92 
    */

       void runCmd(RequestParams reqParams, SolrWriter sw) {

       

         doFullImport(sw,reqParams);

         

         doDeltaImport(sw,reqParams);

       

       }

       

       /** @pdOid bd4adb15-5fad-4770-a57e-3443bf440533 */

       public DocBuilder docBuilder;

       

       /** @param writer 

        * 
    @param requestParams

        * @pdOid 8743a461-6a20-44ad-bd75-d1cdfd97ede0 
    */

       public void doFullImport(SolrWriter writer, RequestParams requestParams) {
         docBuilder = new DocBuilder(this, writer, propWriter, requestParams);

         docBuilder.execute();

       }

       

       /** @param writer 

        * 
    @param requestParams

        * @pdOid a43ada26-0d41-4b02-ba66-a22a4a369a46 
    */

       public void doDeltaImport(SolrWriter writer, RequestParams requestParams) {

         docBuilder = new DocBuilder(this, writer, propWriter, requestParams);

         docBuilder.execute();

       }

    其中runCmd方法根据请求参数决定调用自身的doFullImport(sw,reqParams); 方法或doDeltaImport(sw,reqParams);方法,分别对应全部导入和增量导入

    DataImporter类持有对DocBuilder 的引用,具体的InputDocument的创建由DocBuilder 类实现

  • 相关阅读:
    EasyUI——常见用法总结
    递归算法(转)
    1215整理
    jQuery Ajax 实例 全解析(转)
    EL表达式 (详解)
    JSTL 核心标签库 使用(转)
    JSTL标签用法 详解(转)
    JDBC连接Oracle数据库时出现的ORA-12505错误及解决办法
    java中的基本jdbc中mvc基本示例
    Hibernate的QBC检索方式
  • 原文地址:https://www.cnblogs.com/chenying99/p/2677726.html
Copyright © 2011-2022 走看看