编写自己的JDBC框架之元数据
2017-10-02 本文已影响25人
小小蒜头
编写自己的JDBC框架所涉及到的几个知识点先了解一下。
元数据:拿到元数据,就相当于拿到了数据库的定义信息。
元数据 - DataBaseMetaData
元数据 - DataBaseMetaData这个是拿到库的元数据。
Connection conn = null;
conn = JdbcUtils_c3p0.getConnection();
DatabaseMetaData meta = conn.getMetaData();
System.out.println(meta.getDatabaseProductVersion());
System.out.println(meta.getDatabaseMajorVersion());
System.out.println(meta.getDatabaseMinorVersion());
System.out.println(meta.getDatabaseProductName());
元数据 - ParameterMetaData
元数据 -ParameterMetaData这个是拿到参数的元数据。
Connection conn = JdbcUtils_c3p0.getConnection();
String sql = "insert into user(id,name) values(?,?)";
PreparedStatement ps = conn.prepareStatement(sql);
//得到sql语句的参数元数据
ParameterMetaData meta = ps.getParameterMetaData();
//得到要往里面插入几个参数,也就是有几个问号
System.out.println(meta.getParameterCount());
//mysql这里得不到参数的类型,会报错
System.out.println(meta.getParameterType(1));
元数据 - ResultSetMetaData
元数据 - ResultSetMetaData Connection conn = JdbcUtils_c3p0.getConnection();
String sql = "select * from account";
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
ResultSetMetaData meta = rs.getMetaData();
//得到结果集的列数
System.out.println(meta.getColumnCount());
//得到每列的属性
System.out.println(meta.getColumnName(1));
System.out.println(meta.getColumnName(2));
System.out.println(meta.getColumnName(3));
下篇:编写自己的JDBC框架