📄 databasetool.java
字号:
package Sys.db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JOptionPane;
public class DatabaseTool {
private static ThreadLocal<Object> connection = new ThreadLocal<Object>();
public synchronized static Connection conDB(){
Connection con = (Connection) connection.get();
try{
//Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}catch(ClassNotFoundException e){
JOptionPane.showMessageDialog(null,"数据库加载失败");
}
try{
//con=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=StudentManagerSys","tk","123456");
con=DriverManager.getConnection("jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=StudentManagerSys.mdb");
//con.setAutoCommit(false);
connection.set(con);
return con;
}catch(SQLException e){
JOptionPane.showMessageDialog(null,"数据库连接失败");
}
return null;
}
//之前下面两个函数是dao层每个都有的,所有我将它放到这里让大家使用设为static
//ACCESS关闭数据库方法是先关闭rs,然后在是ps
public static void closeResultSet(ResultSet rs){
if(rs!=null){
try{
rs.close();
rs=null;
}catch(SQLException e){
JOptionPane.showMessageDialog(null, "关闭ResultSet失败");
}
}
}
//因为要用到回滚和提交,而不同用户用到的连接可能不同,所以应该给每个dao都设置它自己的conDB对象
//退出时一定要关闭数据库连接conDB,用查询操作等,没使用一次就要关闭一次
public static void closeStatement(Statement ps){
if(ps!=null){
try{
ps.close();
ps=null;
}catch(SQLException e){
JOptionPane.showMessageDialog(null, "关闭Statement失败");
}
}
}
public static void commit(){
Connection con = (Connection) connection.get();
try {
con.commit();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void rollback(){
Connection con = (Connection) connection.get();
try {
con.rollback();
} catch (SQLException e) {
e.printStackTrace();
}
}
public synchronized static void releaseConnection(Connection connection) {
try {
if (connection != null && !connection.isClosed())
connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
connection = null;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -