首页 > 代码库 > JAVA操作mysql

JAVA操作mysql

所需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<HashMap<String, String>> 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<HashMap<String, String>> result(String sql) {		ResultSet rs = ConnectMySQL.resultSet(sql);		List<HashMap<String, String>> result = new ArrayList<HashMap<String, String>>();		try {			ResultSetMetaData md = rs.getMetaData();			int cc = md.getColumnCount();			while (rs.next()) {				HashMap<String, String> columnMap = new HashMap<String, String>();				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<HashMap<String, String>> rs = ConnectMySQL				.query("SELECT * from test");		System.out.println(rs.get(0).get("test"));		ConnectMySQL.close();	}}

 

JAVA操作mysql