有些什么区别?两种写法.
第一种:import java.sql.Connection;import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.*;
public class TestMysqlConnection {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
} catch (Exception ex) {
ex.printStackTrace();
}
try {
Connection conn =
DriverManager.getConnection("jdbc:mysql://localhost/mydata?" +
"user=root&password=root");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from dept");
while(rs.next()){
System.out.println(rs.getString("deptno"));
}
} catch (SQLException ex) {
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode());
}
}
}
第二种:import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.*;
public class TestMysqlConnection {
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver") ;
conn = DriverManager.getConnection("jdbc:mysql://localhost/mydata?"
+ "user=root&password=root");
stmt = conn.createStatement();
rs = stmt.executeQuery("select * from dept");
while (rs.next()) {
System.out.println(rs.getString("deptno"));
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException ex) {
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode());
}finally{
try{
if(rs != null){
rs.close();
rs = null;
}
if(conn !=null){
conn.close();
conn = null;
}
if(stmt != null){
stmt.close();
stmt = null;
}
}catch(SQLException e1){
e1.printStackTrace();
}
}
}
}
还有两者换了之后异常都不太一样了?
第二个区别是
设置m = true;
if(ture == m)
和
if(m == true)
有什么区别,为什么说第一种更专业?