数据库表student
1、创建数据库连接
private static Connection getConn() throws SQLException {
//1.创建驱动程序类对象:
//new不能是接口,而是实现类;实现类(要导包)在:com.mysql.jdbc.Driver里;
Driver driver = new com.mysql.jdbc.Driver(); //新版本
//Driver driver = new org.gjt.mm.mysql.Driver(); //旧版本
//设置用户名和密码
Properties props = new Properties();
props.setProperty("user", user);
props.setProperty("password", password);
//2.连接数据库,返回连接对象
return driver.connect(url, props);
//输出:com.mysql.jdbc.JDBC4Connection@ba4d54,表明连接成功
}
2、获取MeteData
Connection conn = getConn();
Statement statement = conn.createStatement();
//打印Statement对象的内存地址:com.mysql.cj.jdbc.StatementImpl@23f7d05d
ResultSet rs = statement.executeQuery("select * from student");
ResultSetMetaData metaData = rs.getMetaData();
// 字段个数
int columnCount = metaData.getColumnCount();
for (int i = 1; i <columnCount+1 ; i++) {
// 获取字段名称
String columnName = metaData.getColumnName(i);
// 获取字段类型
int columnType = metaData.getColumnType(i);
// 获取字段类型名称
String columnTypeName = metaData.getColumnTypeName(i);
}
结果
columnName:uuid
columnType:4
columnTypeName:INT
columnName:name
columnType:12
columnTypeName:VARCHAR
columnName:address
columnType:12
columnTypeName:VARCHAR
columnName:age
columnType:4
columnTypeName:INT
columnName:sex
columnType:1
columnTypeName:CHAR
columnName:geom
columnType:-2
columnTypeName:GEOMETRY
结论
可以根据获取到的字段类型进行转换,转换为其他数据库insert格式
例如:Postgis格式为WKB格式 则可以将返回的数据转为WKB格式