package S;
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;
public class JDBCS {
String url = "jdbc:mysql://localhost:3307/ty10";
String name = "root";
String password = "mysql";
Connection conn = null;
PreparedStatement pps=null;
ResultSet rs = null;
JDBCS() {
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(url,name,password);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
void update(String sql,String[] val){
try {
pps = conn.prepareStatement(sql);
for (int i = 0; val!=null && i < val.length; i++) {
pps.setString(i+1, val[i]);
}
pps.executeUpdate();
}catch (SQLException e) {
e.printStackTrace();
}
}
ArrayList> queryToList(String sql ,String[] val){
rs=query(sql,val);
ArrayList<HashMap<String ,String>> list = new ArrayList<HashMap<String,String>>();
try {
ResultSetMetaData mt = rs.getMetaData();//结果集结构对象(有啥字段,类型,长度。。。)
while(rs.next()){
HashMap<String ,String> map = new HashMap<String ,String>();
for (int i = 0; i < mt.getColumnCount(); i++) {//取所有字段
String name = mt.getColumnName( i+1 );//获取列名
map.put(name, rs.getString(name));
}
list.add(map);
}
} catch (SQLException e) {
e.printStackTrace();
}
return list ;
}
ResultSet query(String sql ,String[] val){
try {
pps = conn.prepareStatement(sql);
for (int i = 0; val!=null && i < val.length; i++) {
pps.setString(i+1, val[i]);
}
rs = pps.executeQuery();
return rs ;
}catch (SQLException e) {
e.printStackTrace();
}
return null;
}
void close(){
try {
rs.close();
} catch (SQLException e2) {
e2.printStackTrace();
}
try {
pps.close();
} catch (SQLException e1) {
e1.printStackTrace();
}
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
运行后错误提示
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at S.JDBCS.(JDBCS.java:22)
at S.student2.main(student2.java:9)
Exception in thread "main" java.lang.NullPointerException
at S.JDBCS.query(JDBCS.java:81)
at S.student2.main(student2.java:10)