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连接数据库的方法!