javascript学习指南|java怎么用mysql JAVA操作mysql的教程

更新时间:2021-06-02    来源:js教程    手机版     字体:

【www.bbyears.com--js教程】

所需jar包:mysql-connector-java.jar

代码:

 

 代码如下

import java.sql.*;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

 

import com.mysql.jdbc.Connection;

import com.mysql.jdbc.Statement;

 

public class ConnectMySQL {

 

    public static String driver = "com.mysql.jdbc.Driver";

 

    private static String host;

 

    private static String user;

 

    private static String pwd;

 

    private static Connection conn = null;

 

    private static Statement stmt = null;

 

    public static void connect(String host, String user, String pwd) {

        ConnectMySQL.close();

        ConnectMySQL.host = host;

        ConnectMySQL.user = user;

        ConnectMySQL.pwd = pwd;

    }

 

    public static synchronized List> query(String sql) {

        return ConnectMySQL.result(sql);

    }

 

    public static synchronized void close() {

        try {

            if (stmt != null) {

                stmt.close();

                stmt = null;

            }

            if (conn != null) {

                conn.close();

                conn = null;

            }

        } catch (SQLException e) {

            e.printStackTrace();

        }

    }

 

    private static void connectMySQL() {

        try {

            Class.forName(driver).newInstance();

            conn = (Connection) DriverManager.getConnection("jdbc:mysql://"

                    + host + "?useUnicode=true&characterEncoding=UTF8", user,

                    pwd);

        } catch (InstantiationException e) {

            e.printStackTrace();

        } catch (IllegalAccessException e) {

            e.printStackTrace();

        } catch (ClassNotFoundException e) {

            e.printStackTrace();

        } catch (SQLException e) {

            e.printStackTrace();

        }

 

    }

 

    private static void statement() {

        if (conn == null) {

            ConnectMySQL.connectMySQL();

        }

        try {

            stmt = (Statement) conn.createStatement();

        } catch (SQLException e) {

            e.printStackTrace();

        }

    }

 

    private static ResultSet resultSet(String sql) {

        ResultSet rs = null;

        if (stmt == null) {

            ConnectMySQL.statement();

        }

        try {

            rs = stmt.executeQuery(sql);

        } catch (SQLException e) {

            e.printStackTrace();

        }

        return rs;

    }

 

    private static List> result(String sql) {

        ResultSet rs = ConnectMySQL.resultSet(sql);

        List> result = new ArrayList>();

        try {

            ResultSetMetaData md = rs.getMetaData();

            int cc = md.getColumnCount();

            while (rs.next()) {

                HashMapcolumnMap = new HashMap();

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

                    columnMap.put(md.getColumnName(i), rs.getString(i));

                }

                result.add(columnMap);

            }

        } catch (SQLException e) {

            e.printStackTrace();

        }

        return result;

    }

 

    public static void main(String[] args) throws SQLException {

        ConnectMySQL

                .connect("192.168.1.1/test", "test", "test");

        List> rs = ConnectMySQL

                .query("SELECT * from test");

        System.out.println(rs.get(0).get("test"));

        ConnectMySQL.close();

    }

}

本文来源:http://www.bbyears.com/wangyezhizuo/121269.html

热门标签

更多>>

本类排行