您的位置:首页 > Web前端 > JQuery

webService学习9:jquery ajax调用webservice

2016-06-11 07:51 465 查看
1 参照  webService学习7:调用天气接口 生成客户端代码

2 前台代码

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

<script type="text/javascript" src="<%=basePath %>js/jquery-3.0.0.min.js"></script>
</head>

<body>

城市 :<input type="text" id="city"><button onclick="search()">搜索</button></br>
天气:<textarea id="weathear" rows="10" cols="20"></textarea>

<script type="text/javascript">
var search = function(){

var city = document.getElementById("city").value;
var url="<%=basePath %>servlet/WeatherServlet";
var data = {city:city};
$.ajax({
type: "post",
url: url,
data:data,
dataType: "json",
success: function(data){
document.getElementById("weathear").innerHTML = data.weather;
},
error : function(e){
alert("error");
}
});

}
</script>
</body>
</html>


3 后台代码
package servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;

import cn.com.webxml.WeatherWebService;
import cn.com.webxml.WeatherWebServiceSoap;

public class WeatherServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

String city = request.getParameter("city");
WeatherWebService weatherWS = new WeatherWebService();
WeatherWebServiceSoap weatherSoap = weatherWS.getWeatherWebServiceSoap();
List weathInfo = weatherSoap.getWeatherbyCityName(city).getString();
StringBuffer sb = new StringBuffer();
for(int i =0 ; i < weathInfo.size() ; i++){
sb.append(weathInfo.get(i)+"</br>s");
}
response.setHeader("Content-type", "text/html;charset=UTF-8");
JSONObject jsonObject = new JSONObject();
jsonObject.put("weather", sb.toString());
response.getWriter().write(JSON.toJSONString(jsonObject));
}

}


4 项目截图



5  结果展示

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: