JAVA를 사용하여 데이터베이스에 있는 정보의 조회를 실현하다

1755 단어
질의 코드는 다음과 같습니다.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

Connection connection=null;
Statement statement=null;
ResultSet resultSet=null;
	try {
		Class.forName("com.mysql.jdbc.Driver");
		connection=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","root");
		
		statement=connection.createStatement();
		String sql="select * from user_info";	//      

		resultSet=statement.executeQuery(sql);//            ,        ,      。
		while(resultSet.next()) {	//        。      ,      getString();     。
			String id=resultSet.getString("id");
			String userName=resultSet.getString("user_name");
			String password=resultSet.getString("password");
			System.out.println(id+":"+userName+":"+password);
		}
	} catch (Exception e) {
		e.printStackTrace();
	}finally {	//    :      ,     ,      。
		
		try {
			if(resultSet!=null) {
				resultSet.close();
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		
		try {
			if(statement!=null) {
				statement.close();
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		
		try {
			if(connection!=null) {
				connection.close();
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

finally에서 문장은 다음과 같은 코드로 쓸 수 없습니다:resultSet이기 때문입니다.close();이상이 발생하면 아래 동급 코드의 실행을 중지하고 창을 닫고 연결을 닫는 코드를 다시 실행하지 않습니다.
finally {
	try {
		if(resultSet!=null){
			resultSet.close();
			if (statement!=null) {
				statement.close();
				if (connection!=null) {
					connection.close();
				}
	} catch (SQLException e) {
	e.printStackTrace();
	}
}

좋은 웹페이지 즐겨찾기