Я новичок в Solr, на самом деле я попробовал индексировать таблицу базы данных в Solr вручную, т. Е. Создав новый файл данных config.xml и выполнив полный импорт из SolU webUI, успешно сделал это.Как сделать Solr Dataimport (т.е. из RDBMS) с использованием Java API?
Но теперь мне нужно сделать то же самое на Java. Поэтому мне нужно знать следующие вещи с помощью Java:
- Как установить Solr источник данных в Java API
- Как установить сущность и запрос
- Как запустить полный импорт
На самом деле, для импорта данных мы пишем конфигурационный файл, например, ниже
<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test_db"
user="root"
password="cloudera"/>
<document>
<entity name="emp"
query="select id,name from emp">
<field column="id" name="id"/>
<field column="name" name="name"/>
</entity>
</document>
</dataConfig>
и эту информацию о файле конфигурации we wil л обеспечивают в solrconfig.xml, как показано ниже
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">db-data-config.xml</str>
</lst>
</requestHandler>
Но мое требование, я не хочу, чтобы настроить любой XML-файл, как выше, просто я хочу сделать все это только с Java, так что мне нужно, чтобы установить все конфигурации, которые я дал в выше XML с самого Java кода, то есть что-то вроде ниже
ModifiableSolrParams params = new ModifiableSolrParams();
params.set("Datasource","JdbcDataSource")
params.set("driver","com.mysql.jdbc.Driver")
params.set("url","jdbc:mysql://localhost:3306/test_db")
params.set("user","cloudera")
params.set("password","cloudera")
params.set("query","select * from emp"),etc.
Это третий раз я вывешиваю этот вопрос, но никто не дает мне точное решение или просто скажите, возможно ли это или не?
Если вы задали вопрос три раза и нет- один дал вам точное решение, может быть, пришло время либо самостоятельно выкопать источник (и сделать патч, если необходимо), либо понять, что это, вероятно, невозможно? – MatsLindh
Я не уверен, что это возможно только от SolrJ. Это может быть возможно из Spring Data Solr (никогда не пробовал, поэтому не может подтвердить). Вот довольно хорошая ссылка, чтобы проверить: http://www.petrikainulainen.net/programming/maven/running-solr-with-maven/ – TMBT