数据库操作类util

package util;

import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class DateExecute {

    public static Connection getConnection(String name, String password)
            throws InstantiationException, IllegalAccessException,
            ClassNotFoundException, SQLException {
        Connection con;
        String driverName = "com.mysql.jdbc.Driver";
        Driver d = (Driver) Class.forName(driverName).newInstance();
        con = DriverManager.getConnection("jdbc:mysql://localhost:3307/nona",
                name, password);
        return con;
    }

    public static List<Map<String, Object>> getDateList(String sql)
            throws InstantiationException, IllegalAccessException,
            ClassNotFoundException, SQLException {
        Connection conn = getConnection("root", "root");
        PreparedStatement stmt;
        List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
        try {
            stmt = conn.prepareStatement(sql);
            ResultSet rs = stmt.executeQuery(sql);
            list = convertList(rs);
        } catch (SQLException e) {
            System.out.println("数据库连接失败");
            e.printStackTrace();
        }
        return list;
    }

    private static List convertList(ResultSet rs)
            throws SQLException {

        List list = new ArrayList();
        ResultSetMetaData md = rs.getMetaData();
        int columnCount = md.getColumnCount(); // Map rowData;
        while (rs.next()) { // rowData = new HashMap(columnCount);

            Map<String, Object> rowData = new HashMap<String, Object>();

            for (int i = 1; i <= columnCount; i++) {

                rowData.put(md.getColumnName(i), rs.getObject(i));
            }
            list.add(rowData);
        }
        return list;
    }

    public static int executeUpdate(String sql)
            throws InstantiationException, IllegalAccessException,
            ClassNotFoundException, SQLException {
        Connection conn = getConnection("root", "root");
        PreparedStatement stmt;
        int success = 0 ;
        try {
            stmt = conn.prepareStatement(sql);
            success = stmt.executeUpdate(sql);
        } catch (SQLException e) {
            System.out.println("数据库连接失败");
            e.printStackTrace();
        }
        return success;
    }
}
原文地址:https://www.cnblogs.com/mynona/p/3574318.html