package com.test;
import java.sql.Array;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.Statement;
public class TestDemo{
private static String url ="jdbc:mysql://localhost:3306/act";
private static String user = "root";
private static String pwd ="123456";
private static Connection conn = null;
private static PreparedStatement psmt = null;
private static Statement stmt = null;
private static ResultSet rs = null;
static {
try {
//获取数据库连接
Class.forName("com.mysql.jdbc.Driver");
conn = (Connection) DriverManager.getConnection(url, user, pwd);
}catch(SQLException e){
e.printStackTrace();
}catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public static void main(String [] args) throws ClassNotFoundException, SQLException {
String sql="select t1.TerminalId,t1.ReceiveTime,t2.location from terminalstatus t1, terminalmsg t2 where t1.TerminalId = t2.TerminalId and t1.TerminalId in (";
String sql2 =")";
int [] datas = new int [] {1,2,3};
StringBuffer sb = new StringBuffer(sql);
for(int i=0;i<datas.length;i++) {
sb.append("?");
if(i<datas.length-1) {
sb.append(",");
}
}
sb = new StringBuffer("");
for(int i=0;i<datas.length;i++) {
sb.append(datas[i]);
if(i<datas.length-1) {
sb.append(",");
}
}
String sql3 = "select t1.TerminalId,t1.ReceiveTime,t2.location from terminalstatus t1, terminalmsg t2 where t1.TerminalId = t2.TerminalId and t1.TerminalId in ("+ sb.toString()+")";
sql = sb.toString() + sql2;
System.out.println(sql);
try {
psmt = (PreparedStatement) conn.prepareStatement(sql);
stmt = (Statement) conn.createStatement();
/*for(int i=0;i<datas.length;i++) {
psmt.setInt(i+1,datas[i]);
}*/
/*ResultSet rs = psmt.executeQuery();
System.out.println(rs.getRow());
while(rs.next()) {
System.out.print(rs.getObject(1)+"\t");
System.out.print(rs.getObject(2)+"\t");
System.out.println(rs.getObject(3));
}*/
rs = stmt.executeQuery(sql3);
while(rs.next()) {
System.out.print(rs.getObject(1)+"\t");
System.out.print(rs.getObject(2)+"\t");
System.out.println(rs.getObject(3));
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
if(rs!=null) {
rs.close();
}
if(stmt!=null) {
stmt.close();
}
if(psmt!=null) {
psmt.close();
}
if(conn!=null) {
conn.close();
}
}
}
}