原始创建jdbc以及获取数据ResultSet转换成list

package com.comtop.map.store.mobile.service.impl;

import com.comtop.map.store.utils.JsonUtils;
import java.sql.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


public class test {
    public static void main(String[] args) {
        Connection connection = null;
        Statement statement = null;
        try {
            Class.forName("com.mysql.jdbc.Driver");
            //依次输入数据库地址,用户名,密码
            connection = DriverManager.getConnection("jdbc:mysql://10.10.XX.XXX/dbName?useUnicode=true&characterEncoding=utf-8&useSSL=false", "user", "password");
            statement = connection.createStatement();
            boolean b = statement.execute(" select * from app_example");

            if (b) {
                ResultSet resultSet = statement.getResultSet();
                List list = convertList(resultSet);
                System.out.println(JsonUtils.toJSON(list));
            }
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            if (statement != null) {
                try {
                    statement.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (connection != null) {
                try {
                    connection.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }

    private static List convertList(ResultSet rs) throws SQLException {
        List list = new ArrayList();
        ResultSetMetaData md = rs.getMetaData();//获取键名
        int columnCount = md.getColumnCount();//获取行的数量
        while (rs.next()) {
            Map rowData = new HashMap();
            for (int i = 1; i <= columnCount; i++) {
                rowData.put(md.getColumnName(i), rs.getObject(i));
            }
            System.out.println();
            list.add(rowData);
        }
        return list;
    }
}

查询打印出来的json数据如下

[
    {
        "del_flag": "1", 
        "example_id": 493924268761104, 
        "dept_name": null, 
        "img_ids": "bWFwc3RvcmUxL00wMC8wMC8zMC9DZ29QYlZ2VUlFbUFmNXFfQUFCcS1yeDFrQUU2NTYwMDU3", 
        "sort": null, 
        "create_date": 1540628580000, 
        "title": "推广试用", 
        "app_id": 497789192642576, 
        "update_date": 1543474656000, 
        "content": null
    }, 
    {
        "del_flag": "0", 
        "example_id": 518333048934416, 
        "dept_name": null, 
        "img_ids": "bWFwc3RvcmUxL00wMC8wQi83NC9DZ29QYlZ3dkRtYUFNQXlJQUFIQ2xLYVBPZjQyMjcwMjQ3", 
        "sort": null, 
        "create_date": 1546587755000, 
        "title": "应急案例标题1", 
        "app_id": 518326633852944, 
        "update_date": 1546587755000, 
        "content": null
    }, 
    {
        "del_flag": "0", 
        "example_id": 518368134402064, 
        "dept_name": null, 
        "img_ids": "bWFwc3RvcmUxL00wMC8wQi83Ni9DZ29QYlZ3dkw5eUFYN25jQUFDNEV4OEl1X1UyNTI0OTk1", 
        "sort": null, 
        "create_date": 1546596320000, 
        "title": "exmobi", 
        "app_id": 518353706508304, 
        "update_date": 1547688240000, 
        "content": null
    }
]

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值