@Controller
public class ApiController
{
@Path("/api/v1/user/get_user_info")
public void processUserInfo(HttpServletRequest req, HttpServletResponse resp)throws Exception
{
resp.setContentType("application/json");
resp.setCharacterEncoding("UTF-8");
String callback = req.getParameter("callback");
PrintWriter out = resp.getWriter();
if(callback == null)
{
out.print(getUserInfo());
}
else
{
out.print(callback + "("+getUserInfo()+");");
}
out.close();
}
private String getUserInfo()
{
Map<String, String> user = new HashMap<>();
user.put("id", "1");
user.put("phone", "10086");
user.put("name", "CMCC");
user.put("web_site", "http://www.10086.cn");
Gson g = new Gson();
return g.toJson(user);
}
}
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE HTML>
<html lang="zh-CN">
<head>
<meta charset="utf-8" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>jsky</title>
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
</head>
<body>
<h1>jsky</h1>
<div style="font-size:22px;color:red;" id="box">
</div>
</body>
<script type="text/javascript">
(function ($, win, doc) {
$.ajax({
type: 'GET',
jsonp: 'callback',
url: 'http://java.hqit.com/example/api/v1/user/get_user_info.do',
data: 'version='+new Date().getTime(),
success: function(resp){
var html = "";
html += 'id='+resp.id;
html += '<br />phone='+resp.phone;
html += '<br />name='+resp.name;
html += '<br />web_site='+resp.web_site;
$("#box").html(html);
},
dataType: 'jsonp'
});
})(jQuery, window, document);
</script>
</html>