jdbcTemplate 获取数据库的表名 和 信息
获取数据库的所有表的名字
-
/** * 获取数据库的所有表的名字 */ @Test public void sss(){ // DataSource dataSource; JdbcTemplate jd = new JdbcTemplate(getDataSource()); List<Map<String, Object>> ll = jd.queryForList("select table_name from information_schema.tables where table_schema='blog'"); ll.forEach(t -> System.out.println(t)); }
获取表中 的列名字 和 类型
-
@Test public void getMetaData() { // 设置数据库信息 DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setDriverClassName("com.mysql.jdbc.Driver"); dataSource.setUrl("jdbc:mysql://127.0.0.1:3306/blog?useUnicode=true&characterEncoding=UTF-8"); dataSource.setUsername("root"); dataSource.setPassword("422525"); // 创建jdbcTemplate模板对象,设置数据源 JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource); String sql = "select * from "+ "tbl_article limit 0"; RowCountCallbackHandler rcch = new RowCountCallbackHandler(); jdbcTemplate.query(sql, rcch); String[] coloumnName = rcch.getColumnNames(); int[] coloumnType = rcch.getColumnTypes(); System.out.println(Arrays.toString(coloumnName)); System.out.println(Arrays.toString(coloumnType)); // java.sql.Types. // rcch.get } public DataSource getDataSource() { DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setDriverClassName("com.mysql.jdbc.Driver"); dataSource.setUrl("jdbc:mysql://127.0.0.1:3306/blog?useUnicode=true&characterEncoding=UTF-8"); dataSource.setUsername("root"); dataSource.setPassword("422525"); return dataSource; }
-