JDBC连接Mysql数据库
1、打开myeclipse,新建一个类BaseDao,开始写代码:
2、import java.sql.Connection;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 BaseDao {//建立连接时指定字符编码集,否则中文不识别!static final String url="jdbc:mysql://localhost:3306/jdbc?characterEncoding=utf8";static final String driver="com.mysql.jdbc.Driver";static final String user="root";static final String password="root";static{try {Class.forName(driver);} catch (ClassNotFoundException e) {e.printStackTrace();}}public static Connection open(){Connection conn=null;try {conn=DriverManager.getConnection(url, user, password);} catch (SQLException e) {e.printStackTrace();}return conn;}public static void execute(String sql,Object...param){Connection conn = open();try{PreparedStatement pstmt = conn.prepareStatement(sql);//表示不需要参数if(param != null){for(int i = 0 ; i < param.length ; i++){pstmt.setObject(i+1, param[i]);}}pstmt.executeUpdate();pstmt.close();conn.close();} catch (SQLException e){System.out.println("创建PreparedStatement对象出错");System.out.println("错误信息:"+e.getMessage());}}//执行查询public static List<Map<String,Object>> query(String sql,Object... param){List<Map<String,Object>> list=new ArrayList<Map<String,Object>>();Connection conn=open();try {PreparedStatement pstmt=conn.prepareStatement(sql);if(param!=null){for(int i=0;i<param.length;i++){pstmt.setObject(i+1, param[i]);}}ResultSet rs=pstmt.executeQuery();ResultSetMetaData data=rs.getMetaData();int count=data.getColumnCount();while(rs.next()){Map<String,Object> map=new HashMap<String, Object>();for(int i=1;i<=count;i++){String key=data.getColumnName(i).toLowerCase();Object value=rs.getObject(key);map.put(key, value);}list.add(map);}rs.close();pstmt.close();conn.close();} catch (SQLException e) {System.out.println(e.getMessage());}return list;}}
3、以上就是JDBC连接数据库的方法!