资讯专栏INFORMATION COLUMN

spring jdbcTemplate中获取jdbc Connection并执行操作

OldPanda / 3506人阅读

摘要:实际应用例子在项目中需要获取数据库中元数据相关信息,比如表名,字段名,长度等可以通过可以获取到部分元数据,但是不能获取备注信息中的内容已经有对象,只需要通过获取即可获取全部信息代码示例如下表名列表

实际应用例子
在项目中需要获取数据库中元数据相关信息,比如表名,字段名,长度等
jdbcTemplate 可以通过SqlRowSetMetaData 可以获取到部分元数据,但是不能获取备注信息(comment中的内容)

已经有jdbcTemplate对象,只需要通过jdbcTemplate获取jdbc Connection即可获取全部信息

代码示例如下:

List dtfds = new ArrayList();
dwJdbcTemplate.execute(new ConnectionCallback>() {
    @Override
    public List doInConnection(Connection con) throws SQLException, DataAccessException {
        DatabaseMetaData dbmd = con.getMetaData();
        // 表名列表
        String[] types = { "TABLE" };
        ResultSet tableRS = dbmd.getTables(null, null, dtco, types);
        tableRS.last();
        int cnt = tableRS.getRow();
        tableRS.beforeFirst();
        if (1 != cnt) {
            return null;
        }
        while (tableRS.next()) {
            String tablename = tableRS.getString("TABLE_NAME");
            ResultSet resultSet = dbmd.getColumns(null, null, tablename, null);
            while (resultSet.next()) {
                String name = resultSet.getString("COLUMN_NAME");
                String type = resultSet.getString("TYPE_NAME");
                String colRemarks = resultSet.getString("REMARKS");
                int size = resultSet.getInt("COLUMN_SIZE");
                Dtfd dtfd = new Dtfd();
                dtfd.setDtco(dtco);
                dtfd.setColu(name);
                dtfd.setClna(colRemarks);
                dtfd.setDttp(type);
                dtfd.setDtle(size);
                dtfds.add(dtfd);
            }
        }
        return null;
    }
});
return dtfds;

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/77125.html

相关文章

  • 数据库操作jdbc

    摘要:直接通过获取在中我们可以通过配置文件生成或者获得了就可以拿他进行数据库操作了。这样类通过这个方法获得进行数据库操作。扒开外衣,还原本质其实三种实现数据库操作的方式最终都是通过来操作数据库的。 前言 在构建一个系统的过程中难免需要对数据存储,而存储一般会有缓存(内存)、数据库(硬盘)两种存储介质。 本篇文章我们主要来介绍下在我们通过spring构建应用的过程中如何进行数据库连接、以及数据...

    trigkit4 评论0 收藏0
  • Spring【DAO模块】就是这么简单

    摘要:连接对象执行命令对象执行关闭值得注意的是,对数据库连接池是有很好的支持的。给我们提供了事务的管理器类,事务管理器类又分为两种,因为的事务和的事务是不一样的。 前言 上一篇Spring博文主要讲解了如何使用Spring来实现AOP编程,本博文主要讲解Spring的DAO模块对JDBC的支持,以及Spring对事务的控制... 对于JDBC而言,我们肯定不会陌生,我们在初学的时候肯定写过非...

    NSFish 评论0 收藏0
  • 谈谈Spring-Data的那些事儿

    摘要:什么是呢全称,是提出的一个对象持久化规范,各应用服务器自主选择具体实现。仅仅只是一个规范,而不是产品使用本身是不能做到持久化的。只要提供了持久化类与表的映射关系,框架在运行时就能参照映射文件的信息,把对象持久化到数据库中。 我们在进行事务处理往往需要和数据库进行交互,这其中有关系型数据库(MySql,Sql Server,Oracle)或者是非关系型数据库(Redis,Hadhoop)...

    chinafgj 评论0 收藏0
  • 谈谈Spring-Data的那些事儿

    摘要:什么是呢全称,是提出的一个对象持久化规范,各应用服务器自主选择具体实现。仅仅只是一个规范,而不是产品使用本身是不能做到持久化的。只要提供了持久化类与表的映射关系,框架在运行时就能参照映射文件的信息,把对象持久化到数据库中。 我们在进行事务处理往往需要和数据库进行交互,这其中有关系型数据库(MySql,Sql Server,Oracle)或者是非关系型数据库(Redis,Hadhoop)...

    charles_paul 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<