1、编写数据xml文件,通过post.jar导入;
2、通过DIH导入;
3、利用solrj导入数据;
现针对第三种方式进行研究,在第一步中写了一段小的测试代码,可以参考:http://wiki.apache.org/solr/Solrj#Streaming_documents_for_an_update
具体的代码解释如下:
String url = "http://localhost:8080/solr"
HttpSolrServer server = new HttpSolrServer(url)
//If you wish to delete all the data from the index, do this
//server.deleteByQuery( "*:*" )
//Construct a document
SolrInputDocument doc1 = new SolrInputDocument()
doc1.addField( "id", "id1_solrj" )
doc1.addField( "type", "doc1_solrj" )
doc1.addField( "name", "name1_solrj" )
//Construct another document
SolrInputDocument doc2 = new SolrInputDocument()
doc2.addField( "id", "id2" )
doc2.addField( "type", "doc2_solrj" )
doc2.addField( "name", "name2_solrj" )
//Create a collection of documents
Collection<SolrInputDocument>docs = new ArrayList<SolrInputDocument>()
docs.add(doc1)
docs.add(doc2)
//Do a commit
try {
server.add(docs)
server.commit()
} catch (SolrServerException e) {
System.out.println("server commit error, error code:")
e.printStackTrace()
} catch (IOException e) {
System.out.println("server commit error, error code:")
e.printStackTrace()
}
}
该端代码执行后报异常:expect mime type application/octet-stream but got text/html
没找到这个的解决办法,根据提示好像是说期望的类型和服务器反馈的类型不匹配
最后的解决办法是这样的:
之前在配置solr服务器的时候将solr解压路径\solr-4.8.1\example\solr下的solr.xml用\solr-4.8.1\example\multicore下的solr.xml文件进行了替换,目的是为了引入core0和core1,现在需要将这个动作进行回滚,并且修改collection1下的conf下的schema.xml文件,修改为对应的需要的列定义。然后执行以上的代码就不会产生问题。
原因我也不太明白,感觉应该是collection1的配置和core1、core0、乃至之前文章提到过的solrtest的配置应该不太一样。原因待查。不过现在已经可以通过客户端的方式将数据导入solr服务器,并在前端可以查询到相应的数据。
在导入图片的时候,因为大量数据,一个一个上传是非常慢的,这里分享下快速批量导入图片的方法。
1、首先打开excel表格,在表格里面先编辑好文档,选中需要插入图片的表格。
2、然后点击菜单栏的 行和列,选择行高。
3、然后在跳出的行高框里,这个是放图片表格的高度,一般一寸左右的图片,试试输入120。
4、然后在菜单栏,插入,选择图片,点击本地电脑文件图片,把需要的图片全选,插入。
5、图片添加插入之后,再把图片拉进相对应的名字单元格,再把左右单元格选中对齐居中,这样就可以了。
你好,要导入多张图像到ImageJ中,请按照以下步骤 *** 作:1. 打开ImageJ软件。
2. 点击“文件”菜单,然后选择“批量处理”选项。
3. 在d出的对话框中,点击“输入输出”选项卡。
4. 在“输入文件夹”文本框中,选择您存储图像的文件夹路径。
5. 在“文件类型”下拉列表中,选择您要导入的图像文件类型,例如.tif或.jpg。
6. 在“输出文件夹”文本框中,选择您想要将导入的图像保存到的文件夹路径。
7. 点击“运行”按钮,ImageJ将自动导入您指定文件夹中的所有图像,并将它们保存到指定的输出文件夹中。
请注意,如果您不想使用批处理命令来导入多个图像,您还可以单独导入每个图像。要导入单个图像,请点击“文件”菜单,然后选择“打开”选项,接着选择您要导入的图像文件。您可以重复此步骤,以依次导入多个图像。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)