Solr3.x版本 添加数据 import org.apache.solr.client.solrj.SolrServerException; import org.apache.solr.client.solrj.impl.CommonsHttpSolrServer; import org.apache.solr.common.SolrInputDocument; import java.io.IOException; public class SolrjPopulator { public static void main(String[] args) throws IOException, SolrServerException { CommonsHttpSolrServer server = new CommonsHttpSolrServer("http://localhost:8983/solr"); for(int i=0;i<1000;++i) { SolrInputDocument doc = new SolrInputDocument(); doc.addField("cat", "book"); doc.addField("id", "book-" + i); doc.addField("name", "The Legend of Po part " + i); server.add(doc); if(i%100==0) server.commit(); // periodically flush } server.commit(); } } 查询数据 import org.apache.solr.client.solrj.SolrServerException; import org.apache.solr.client.solrj.impl.CommonsHttpSolrServer; import org.apache.solr.client.solrj.response.QueryResponse; import org.apache.solr.common.SolrDocumentList; import org.apache.solr.common.params.ModifiableSolrParams; import java.net.MalformedURLException; public class SolrJSearcher { public static void main(String[] args) throws MalformedURLException, SolrServerException { CommonsHttpSolrServer solr = new CommonsHttpSolrServer("http://localhost:8983/solr"); ModifiableSolrParams params = new ModifiableSolrParams(); params.set("q", "cat:electronics"); params.set("defType", "edismax"); params.set("start", "0"); QueryResponse response = solr.query(params); SolrDocumentList results = response.getResults(); for (int i = 0; i < results.size(); ++i) { System.out.println(results.get(i)); } } } Solr4.x版本 插入数据 import java.io.IOException; import org.apache.solr.client.solrj.SolrServerException; import org.apache.solr.client.solrj.impl.HttpSolrServer; import org.apache.solr.common.SolrInputDocument; public class SolrjPopulator { public static void main(String[] args) throws IOException, SolrServerException { HttpSolrServer server = new HttpSolrServer("http://localhost:8983/solr"); for (int i = 0; i < 1000; ++i) { SolrInputDocument doc = new SolrInputDocument(); doc.addField("cat", "book"); doc.addField("id", "book-" + i); doc.addField("name", "The Legend of Po part " + i); server.add(doc); if (i % 100 == 0) server.commit(); // periodically flush } server.commit(); } } 查询数据 import java.net.MalformedURLException; import org.apache.solr.client.solrj.SolrServerException; import org.apache.solr.client.solrj.impl.HttpSolrServer; import org.apache.solr.client.solrj.response.QueryResponse; import org.apache.solr.common.SolrDocumentList; import org.apache.solr.common.params.ModifiableSolrParams; public class SolrJSearcher { public static void main(String[] args) throws MalformedURLException, SolrServerException { HttpSolrServer solr = new HttpSolrServer("http://localhost:8983/solr"); ModifiableSolrParams params = new ModifiableSolrParams(); params.set("q", "cat:electronics"); params.set("defType", "edismax"); params.set("start", "0"); QueryResponse response = solr.query(params); SolrDocumentList results = response.getResults(); for (int i = 0; i < results.size(); ++i) { System.out.println(results.get(i)); } } } SolrCloud 添加数据 import java.io.IOException; import org.apache.solr.client.solrj.SolrServerException; import org.apache.solr.client.solrj.impl.CloudSolrServer; import org.apache.solr.common.SolrInputDocument; public class SolrCloudSolrjPopulator { public static void main(String[] args) throws IOException, SolrServerException { String zkHost = "localhost:2181"; String defaultCollection = "collection1"; CloudSolrServer server = new CloudSolrServer(zkHost); server.setDefaultCollection(defaultCollection); for (int i = 0; i < 1000; ++i) { SolrInputDocument doc = new SolrInputDocument(); doc.addField("cat", "book"); doc.addField("id", "book-" + i); doc.addField("name", "The Legend of Po part " + i); server.add(doc); if (i % 100 == 0) server.commit(); // periodically flush } server.commit(); } } 查询数据 import java.net.MalformedURLException; import org.apache.solr.client.solrj.SolrServerException; import org.apache.solr.client.solrj.impl.CloudSolrServer; import org.apache.solr.client.solrj.response.QueryResponse; import org.apache.solr.common.SolrDocumentList; import org.apache.solr.common.params.ModifiableSolrParams; public class SolrCloudSolrJSearcher { public static void main(String[] args) throws MalformedURLException, SolrServerException { String zkHost = "localhost:2181"; String defaultCollection = "collection1"; CloudSolrServer solr = new CloudSolrServer(zkHost); solr.setDefaultCollection(defaultCollection); ModifiableSolrParams params = new ModifiableSolrParams(); params.set("q", "cat:electronics"); params.set("defType", "edismax"); params.set("start", "0"); QueryResponse response = solr.query(params); SolrDocumentList results = response.getResults(); for (int i = 0; i < results.size(); ++i) { System.out.println(results.get(i)); } } } 转自:http://www.solr.cc/blog/?p=1296