一、Java Script

1、由于Solr本身可以返回Json格式的结果,而JavaScript对于处理Json数据具有天然的优势,因此使用JavaScript实现Solr客户端是一个很好的选择。

2、在之前,主要使用SolJS作为solr的客户端,目前主要使用ajax-solr,信息请见:https://github.com/evolvingweb/ajax-solr/wiki/Reuters-tutorial%3A-step-1。

3、以下示例未使用上述所述的客户端,而是使用了ajax的基本功能,完成了搜索结果的呈现。

<html>
<head>
<meta charset="UTF-8">
<title>Search Result</title>
<script type="text/javascript">
var xmlhttp;
var responseJson;
function loadXMLDoc(url) {
xmlhttp = null;
if (window.XMLHttpRequest) {// code for Firefox, Opera, IE7, etc.
xmlhttp = new XMLHttpRequest();
} else if (window.ActiveXObject) {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlhttp != null) {
xmlhttp.onreadystatechange = state_Change;
xmlhttp.open("GET", url, true);
xmlhttp.send(null);
} else {
alert("Your browser does not support XMLHTTP.");
}
} function state_Change() {
if (xmlhttp.readyState == 4) {// 4 = "loaded"
if (xmlhttp.status == 200) {// 200 = "OK" //将responseText转化为Json类型的变量,才能通过点号读取数据。
responseJson = eval("(" + xmlhttp.responseText + ")");
for (var i = 0; i < responseJson.response.docs.length; i++) {
document.write("title:"
+ responseJson.response.docs[i].title + "<br>");
document.write("time:"
+ responseJson.response.docs[i].tstamp + "<br>");
document.write("content:"
+ responseJson.response.docs[i].content.substring(
20, 100) + "<br><br><br>"); }
} else {
alert("Problem retrieving data:" + xmlhttp.statusText);
}
}
}
</script>
</head> <body onload="loadXMLDoc('/solr/collection1/query?q=*:*')"> </body> </html>

最新文章

  1. Newtonsoft.Json(Json.Net)学习笔记-高级使用(转)
  2. 修改vs helpview手册路径
  3. JDBC basic
  4. ASP.NET MVC3 Model验证总结(转)
  5. sql总结
  6. kernel debuging
  7. Loadrunner结果分析Graphs
  8. pig对null的处理(实际,对空文本处理为两种取值null或‘’)
  9. 如何更好地理解和使用Github
  10. 理解本真的REST架构风格
  11. CodeForces - 385C Bear and Prime Numbers (埃氏筛的美妙用法)
  12. YUI3组件框架之plugin
  13. 理解Express express.static 和 __direname 及 __firename的含义
  14. mongodb 通过mongodump来备份Sharded Cluste分片集群
  15. Java Spring学习笔记----Bean的依赖注入(设值注入方式)1
  16. 001.NFS简介
  17. Recursive Queries CodeForces - 1117G (线段树)
  18. #002 Emmet完整API
  19. Xcode 利用VVDocumenter 生成注释 通过设置 再生成注释文档
  20. 【Leetcode】72 Edit Distance

热门文章

  1. js借用和绑定
  2. 如何利用putty的密钥登陆
  3. 微信JS-SDK 接口调用与 php 遇到的坑
  4. Makefile的几个赋值运算符(转:笔记)
  5. Yoga安装Ubuntu后,wifi和亮度调节问题
  6. 去除winXP访问共享的“记住密码”
  7. 关于NGINX变量的一些测试结果
  8. PowerShell_零基础自学课程_9_高级主题:静态类和类的操作
  9. Maven自定义Archetype
  10. Android 之 Eclipse 导入 Android 源码