1.java代码如下:

packagecom.eduask;
importjava.io.IOException;
importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
publicclassDemo5extendsHttpServlet{
@Override
protectedvoidservice(HttpServletRequest req, HttpServletResponse resp)
throwsServletException, IOException {
resp.setContentType("text/xml;charset=utf-8");
String name=req.getParameter("username1");
resp.setCharacterEncoding("utf-8");
String msg="";
if("tom".equals(name)) {
msg="{'msg':'failed'}";
resp.getWriter().write(msg);
}else{
msg="{'msg':'success'}";
resp.getWriter().write(msg);
}
}
}
2.json.jsp代码如下:
<body> <!-- function Person(id,name,pwd){
this.id=id;
this.name=name;
this.pwd=pwd;
}
var p=new Person(1234,"tom","1234");

alert(p.id+"--"+p.name+"--"+p["pwd"]);

var p1={
'id':234,
'name':"jack",
'pwd':"123"

};
function Person(){
this.name="tom";
this.age=23;
}
alert(p1.id+"--"+p1.name+"--"+p1["pwd"]);
-->
username1:<input type="text"id="username1"name="username1">
<span id="msg1"></span>
<script type="text/javascript">
//===================post=====================================================
varpost=document.getElementById("username1");
post.οnblur=function(){
varxhr=getXhr();
xhr.onreadystatechange=function(){
if(xhr.readyState==4) {
if(xhr.status==200) {
//字符串格式的数据
varmsg1=xhr.responseText;
//转换为json对象
msg1=eval("("+msg1+")")
varspan=document.getElementById("msg1");
//通过对象.属性名称获取属性的值
span.innerHTML="<font color=red>"+msg1.msg+"</font>";
}
}
}
xhr.open("post","/ajax/Demo5");
//设置消息头,告诉浏览器携带请求体数据
xhr.setRequestHeader("content-type","application/x-www-form-urlencoded");
/* */varspan=document.getElementById("msg1");
span.innerHTML="正在加载数据...";
xhr.send("username1="+post.value);
}
functiongetXhr(){
varxhr;
if(window.XMLHttpRequest) {
xhr=newXMLHttpRequest();
}else{
xhr=newActiveXObject("microsoft.xmlhttp");
}
returnxhr;
}
</script>
</body>
3.web.xml配置文件如下:
<!-- demo5 -->
<servlet>
<servlet-name>Demo5</servlet-name>
<servlet-class>com.eduask.Demo5</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Demo5</servlet-name>
<url-pattern>/Demo5</url-pattern>
</servlet-mapping>