WHY
今天群里一朋友问关于数据库连接的问题,应该是初学Java吧。然后就想着写写这个让初学者们可以看看。
HOW
这个讲解就不多讲了,也没什么好讲的,直接上代码吧
public static void main(String[] args) {
String driver = "com.mysql.jdbc.Driver";
String dbName = "zhi";
String passwrod = "root";
String userName = "root";
String url = "jdbc:mysql://192.168.1.5:3306/" + dbName;
String sql = "select id from user";
try {
Class.forName(driver);
Connection conn = DriverManager.getConnection(url, userName,passwrod);
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
int a=0,b=0,c=0,d=0;
while (rs.next()) {
String id = rs.getString(1);
UUID uuid = UUID.fromString(id);
long key = Math.abs(uuid.hashCode());
int val = (int) (key%4);
if(val == 0){
a++;
}else if(val == 1){
b++;
}else if(val == 2){
c++;
}else{
d++;
}
System.out.println("---------------------------------"+id+":::::::::::"+val);
}
System.out.println("********************a:"+a+";;;b:"+b+";;;c:"+c+";;;;d:"+d);
// 关闭记录集
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
// 关闭声明
if (ps != null) {
try {
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
// 关闭链接对象
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
这个里面要注意的是驱动别写错了。朋友连sql server的时候驱动写的com.microsoft.SQLServerDriver,然后程序就一直报找不到class。
这个一个细节问题吧,然后记得用完之后要关闭连接,不要占着资源