JQuery自己集成了ajax的使用方法,可以很方便的进行调用。如果自己进行写ajax是比较麻烦的。
值得注意的是在引入Json是很多人会出现在main函数中可以正常调用,但是在servlet中会出现引用异常的现象,这往往是因为lib没有在web中的引用,具体做法参照之前的文档https://blog.youkuaiyun.com/TONIYH/article/details/79233930
如果你是使用maven的话,你可以进行如下操作。进入到project setting:在WEB-INF下建立文件夹lib,点击上面的+号
这样系统就可以正确的调用json;
我们先看json的服务器端的代码:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// super.doGet(req, resp);
req.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=utf-8");
String path = this.getServletContext().getRealPath("data/当归.txt");
String filename =path;
String data = MediclaInfo.getmedicalinfo(filename);
System.out.println(filename);
Writer out = resp.getWriter();
out.write(data);
out.close();
}
注意到我这里是用一个方法:MedicalInfo.getmedicalinfo(filename) 这个函数返回的就是一个json数据。
我们利用ajax来获取这个json数据:
<script type="text/javascript" charset="UTF-8">
$(document).ready(function () {
$("#test").click(function () {
// var value = $("#test").val();
// alert(value)
$.getJSON("Servlet.SearchMedical",
{tags: "mount rainier",
tagmode: "any",
format: "json"}).done(function (data) {
// alert(data["keyword"])//图形的处理
var text = $("#text1").val();
console.log(text);
draw(data);
// alert(data["entitys"][0])
})
});
});
JQuery中ajax 中有个一方便的方法getJson()。