/*** 通过jsbc获取数据
*@paramdriver driver
*@paramurl 数据库url
*@paramusername 用户名
*@parampassword 密码
*@paramsql sql语句
*@paramsqlType 语句类型 ,1:查询语句,2:创建语句
*@paramcolumnConnt 查询语句返回列的个数
*@returnList*/
public static List> getJdbcData(String driver, String url, String username, String password, String sql, int sqlType, intcolumnConnt){
Connection con= null;
Statement st= null;
ResultSet rs= null;
List> result = new ArrayList<>();try{//1.加载oracle数据库驱动
Class.forName(driver);//2.获取数据库连接
con =DriverManager.getConnection(url, username, password);//3.获取执行sql语句的平台
st =con.createStatement();//4.执行sql语句获取结果集//查询
if(sqlType == 1){
rs=st.executeQuery(sql);//5.循环获取结果集数据
int i = 1;while(rs.next()){if(i <=columnConnt){
Map resultMap = new HashMap<>(columnConnt);for (int j = 0; j < columnConnt; j++) {
resultMap.put("column" + (j + 1) + "", rs.getString(j + 1));
}
result.add(resultMap);
}
}
}else{//创建
int rss =st.executeUpdate(sql);
Map resultMap = new HashMap<>(columnConnt);
resultMap.put("column" + 1 + "", rss + "");
result.add(resultMap);
}returnresult;
}catch(ClassNotFoundException e) {
e.printStackTrace();
Map resultMap = new HashMap<>(columnConnt);
resultMap.put("column1", "-1");
result.add(resultMap);
}catch(SQLException e) {
e.printStackTrace();
Map resultMap = new HashMap<>(columnConnt);
resultMap.put("column1", "-1");
result.add(resultMap);
}finally{//关闭rs
if(rs != null){try{
rs.close();
}catch(SQLException e) {
e.printStackTrace();
}
}//关闭st
if(st != null){try{
st.close();
}catch(SQLException e) {
e.printStackTrace();
}
}//关闭con
if(con != null){try{
con.close();
}catch(SQLException e) {
e.printStackTrace();
}
}returnresult;
}//return result;
}