之前使用的都是SolrInputDocument来完成像服务器提交数据,但是Solr给我们提供了更便捷的方法
支持直接使用Java PoJo类来完成提交数据
那么我们先写一个Pojo类,如下package org.solrj.root;
package org.solrj.root;
import org.apache.solr.client.solrj.beans.Field;
public class Dog {
@Field
private String id;
@Field
private String name;
@Field
private Float price;
@Field
private String comments;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Float getPrice() {
return price;
}
public void setPrice(Float price) {
this.price = price;
}
public String getComments() {
return comments;
}
public void setComments(String comments) {
this.comments = comments;
}
}
我们在相应的保持一致的字段上添加了注解。
接下来我们写一个向服务器添加的函数。
public static void addIndexDocWithPojo(SolrServer server) throws SolrServerException, IOException{
Dog dog1=new Dog();
dog1.setComments("大家好,我是中国狗,我在北京");
dog1.setId("dog1005");
dog1.setName("天语");
dog1.setPrice(520.6f);
Dog dog2=new Dog();
dog2.setComments("大家好,我是日本狗,我在东京");
dog2.setId("dog1006");
dog2.setName("索尼");
dog2.setPrice(520.6f);
List<Dog> dogs=new ArrayList<Dog>();
dogs.add(dog1);
dogs.add(dog2);
server.addBeans(dogs);
server.commit();
}
当然这个函数还是在之前写过的Root类中。
这样就可以完成了直接使用Java Pojo的文档提交。
![](http://dl.iteye.com/upload/attachment/0078/4531/e3395a4c-63f1-31fc-bf46-5d9715c87753.jpg)
提交后,便可以查看我们的检索结果了。