使用SolrJ提示Solr查询

时间:2019-01-07 18:23:59

标签: solr solrj

我正在尝试使用solrj构建一个solr查询。根据我对Solr-7.5.0的了解,应该在我的solr安装中包括solrj的所有库和依赖项。下面是我的/ dist文件夹,然后是我的/ dist / solrj-lib文件夹

dist

dist/solrj-lib

现在,我的查询将被绑定到html发布表单,但我想让solrj首先工作。这是我的全部solpj

    import org.apache.solr.client.solrj.SolrClient;
    import org.apache.solr.client.solrj.SolrQuery;
    import org.apache.solr.client.solrj.HttpSolrClient;

    String queryInput = q;
    SolrQuery query = new SolrQuery(queryInput);
    SolrClient client = new HttpSolrClient.Builder (
        "http://localhost:8983/solr/sqltest")
        .build();
    QueryResponse response = client.query(query);
    SolrDocumentList list = response.getResults();

这将无法编译,因为它无法识别我的类(SolrClient,SolrQuery等)。我敢肯定,现在有无数问题,但我不确定从哪里开始。 作为附带的问题,我正在研究不在编译代码中的其他API。这些工具中的一种会更好地用于Web应用程序,还是使用Solrs本机solrj安全吗?

1 个答案:

答案 0 :(得分:2)

您可以安全地使用SolrJ-实际上,如果您正在编写Java应用程序,则这是与Solr进行交互的推荐方式。除了下面提供的详细信息之外,请参见Using SolrJ - Building and Running SolrJ Applications

我从屏幕快照中假设您正在Windows上-如果您在Linux或OS X上,则将;替换为:作为下面的路径分隔符。

要包含SolrJ jar,在运行-classpath ".;path-to-solr-solrj-7.5.0.jar时需要包含一个javac参数。这是编译应用程序所需的唯一jar。

运行它时,您必须包含在solrj-lib路径中找到的jar。您可以通过在文件中包含java的类路径参数来实现。使用java -classpath ".;path-to-solrj-lib\*include all the jar files in the directory