聚合数据 api java_java 聚合数据 天气 API接口调用
public class GetDataIntoTable {
public static void main(String[] args) throws Exception {
Connection conn = DatabaseConnection.getConnection();
String cityName = "广州";
if (getByCityName(cityName)) {
PreparedStatement pstmt = conn.prepareStatement("SELECT city,message FROM tianqi WHERE city=?");
pstmt.setString(1, cityName);
ResultSet rs = pstmt.executeQuery();
if (rs.next()) {
System.out.print(rs.getString(2));
}
} else {
PreparedStatement pstmt = conn.prepareStatement("INSERT INTO tianqi(city,message,modify) VALUES(?,?,?)");
String msg = getData(cityName);
pstmt.setString(1, cityName);
pstmt.setString(2, msg);
pstmt.setTimestamp(3, new Timestamp(new java.util.Date().getTime()));
pstmt.executeUpdate();
}
}
public static String getData(String cityName) throws Exception {
String city = URLEncoder.encode(cityName, "UTF-8");
URLConnection conn = new URL(
"http://v.juhe.cn/weather/index?format=2&cityname=" + city + "&key=e643d606ab8b9b5636dcc02368")
.openConnection();
conn.connect();
InputStream input = conn.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(input, "UTF-8"));
return reader.readLine();
}
public static boolean getByCityName(String city) throws Exception {
Connection conn = DatabaseConnection.getConnection();
PreparedStatement pstmt = conn.prepareStatement("SELECT COUNT(*) FROM tianqi WHERE city=?");
pstmt.setString(1, city);
ResultSet rs = pstmt.executeQuery();
if (rs.next()) {
if (rs.getInt(1) > 0) {
return true;
}
}
return false;
}
}
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)