package testjdbc;
import java.sql.*;
import releseJDBC.ReleaseResource;
public class Test {
public static void main(String[] args) {
Connection conn = null;
Statement st = null;
ResultSet rs = null;
try{
//1注册驱动com.microsoft.sqlserver.jdbc.SQLServerDriver
DriverManager.registerDriver(new com.microsoft.sqlserver.jdbc.SQLServerDriver());
//Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//两种不同的注册方法,效果一样
String url = "jdbc:sqlserver://localhost:1433;databaseName = shopping";
String user = "root";
String psw = "123456";
//2建立连接 参数一:协议 参数二:用户名 参数三:密码
conn = DriverManager.getConnection(url,user,psw);
//3创建statment,跟数据库打交道,一定需要这个对象
st = conn.createStatement();
//4执行查询得到结果集
String sql = "select * from users";
rs = st.executeQuery(sql);
//5遍历每一条记录
while(rs.next()){
int id = rs.getInt("userID");
int age = rs.getInt("age");
String name = rs.getString("userName");
String passWord = rs.getString("passWord");
String sex = rs.getString("sex");
String telNum = rs.getString("telNum");
String mail = rs.getString("e_Mail");
System.out.println("id=" + id +"===age=" + age + "==name=" + name + "== passWord="
+passWord +"==sex=" + sex + "== telNum=" + telNum + "==mail=" + telNum
+ "==E Mail=" + mail);
}
}catch(SQLException e){
e.printStackTrace();
}finally{
ReleaseResource.releaseSource(st, conn, rs);//此为释放资源,方法在下面
}
}
}
// 以上为测试是否连接上了数据库,以下为释放数据库方法
package releseJDBC;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class ReleaseResource {
/**
* 释放资源
* @param st
* @param conn
* @param rs
*/
public static void releaseSource(Statement st,Connection conn, ResultSet rs){
closeStatement(st);
closeConnection(conn);
closeResultSet(rs);
}
private static void closeStatement(Statement st){
try{
if(st != null)
st.close();
}catch(SQLException e){
e.printStackTrace();
}finally{
st = null;
}
}
private static void closeConnection(Connection conn){
try{
if(conn != null)
conn.close();
}catch(SQLException e){
e.printStackTrace();
}finally{
conn = null;
}
}
private static void closeResultSet(ResultSet rs){
try{
if(rs != null)
rs.close();
}catch(SQLException e){
e.printStackTrace();
}finally{
rs = null;
}
}
}
//来源黑马