Java连接数据库(开发)

来源:互联网 发布:宿迁市12345网络问政 编辑:程序博客网 时间:2024/06/05 12:43
//配置文件  事件  回滚

DBConfig.properties


driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/student
username=root
password=root

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;


public class DBUtil {


public Connection openConnection(){
Properties prop = new Properties();
String driver =null;
String url = null;
String username = null;
String password =null;
try {
prop.load(this.getClass().getClassLoader().getResourceAsStream(
"DBConfig.properties"));
driver = prop.getProperty("driver");
url =prop.getProperty("url");
username = prop.getProperty("username");
password = prop.getProperty("password");
try {
Class.forName(driver);
return DriverManager.getConnection(url,username, password);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
// public Connection getConnection(){
// try {
// Class.forName("com.mysql.jdbc.Driver");
// return DriverManager.getConnection("jdbc:mysql://localhost:3306/student","root", "root");
// } catch (Exception e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
//
// return null;
// }
public void closeConnection(Connection conn){
if(conn!=null){  
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}


//事件  回滚


import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


import com.maker.util.DBUtil;


public class Tester {
public static void main(String[] args) {
Tester test = new Tester();
test.list();
}
public void list(){
DBUtil util = new DBUtil();
// Connection conn = util.getConnection();
Connection conn = util.openConnection();
// String sql ="select * from t_student";
//事物  回滚
String sql1 = "update t_student set id = id+1 where name='小明'";
String sql2 = "update t_student set id = id-1 where name='小丽'";


try {
conn.setAutoCommit(false);
Statement stat = conn.createStatement();
stat.executeUpdate(sql1);
stat.executeUpdate(sql2);
conn.commit();

// ResultSet rs = stat.executeQuery(sql);
// while(rs.next()){
// String id = rs.getString(1);
// String name = rs.getString(2);
// System.out.println(id+" "+name);
// }

} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
try {
conn.rollback();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}finally{
util.closeConnection(conn);
}


}
}