共同的连接工具类
package com.hipad.util;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
public class MyJdbcUtils {
private static String driverName;
private static String url;
private static String user;
private static String password;
private static ThreadLocal<Connection> local = new ThreadLocal<>();
private static String loginUri;
private MyJdbcUtils() {
}
static {
try {
Properties prop = new Properties();
InputStream in = MyJdbcUtils.class.getResourceAsStream("/jdbc.properties");
prop.load(in);
driverName = prop.getProperty("DriverName");
url = prop.getProperty("url");
user = prop.getProperty("user");
password = prop.getProperty("password");
loginUri = prop.getProperty("loginUri");
Class.forName(driverName);
} catch (Exception e) {
e.printStackTrace();
}
}
public static String getLoginUri() {
return loginUri;
}
/**
* 获取连接的方式
*
* @return
* @throws SQLException
*/
public static Connection getConnection() throws Exception {
Connection conn = local.get();
if (conn == null) {
conn = DriverManager.getConnection(url, user, password);
local.set(conn);
}
return conn;
}
/**
* 提交事务的方法
*
* @throws Exception
*/
public static void commit() throws Exception {
getConnection().commit();
}
/**
* 回滚事务
*
* @throws Exception
*/
public static void rollback() throws Exception {
getConnection().rollback();
}
/**
* 开启事务
*
* @throws Exception
*/
public static void startTransaction() throws Exception {
getConnection().setAutoCommit(false);
}
// 针对查询释放资源
public static void release(ResultSet rs, Statement stmt, Connection conn) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
rs = null;
}
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
stmt = null;
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
conn = null;
}
}
// 针对增删改释放资源
public static void release(Statement stmt, Connection conn) {
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
stmt = null;
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
conn = null;
}
}
}
1,jdbc连接oracle
连接所需:ojdbc14.jar,jdbc.properties配置文件,共同的连接工具类
jdbc.properties
DriverName=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@192.168.0.0:1521:orcl
user=用户名
password=密码
2,jdbc连接mysql
连接所需:mysql-connector-java-5.1.39-bin.jar,jdbc.properties配置文件,共同的连接工具类
DriverName=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/hipad_sl
user=root
password=
3,jdbc连接sqlserver
连接所需:sqljdbc42.jar,jdbc.properties配置文件,共同的连接工具类
jdbc.properties
DriverName=com.microsoft.sqlserver.jdbc.SQLServerDriver
url=jdbc:sqlserver://10.1.6.24:1433;DatabaseName=AIS20180518162016
user=user
password=password
一、MySQL:
driverClass:com.mysql.jdbc.Driver
org.gjt.mm.mysql.Driver
jdbcUrl:jdbc:mysql://192.168.0.1:3306/yourDBName
硬编码(不建议):
Class.forName("com.mysql.jdbc.Driver", true, Thread.currentThread().getContextClassLoader());
conn=DriverManager.getConnection("jdbc:mysql://192.168.0.1:3306/yourDBName?user=userName&password=123&useUnicode=true&characterEncoding=gb2312");
二、Oracle:
(thin模式)
driverClass:oracle.jdbc.driver.OracleDriver
jdbcUrl:jdbc:oracle:thin:@192.168.0.1:1521:yourDBName
三、SQL Server:
driverClass:com.microsoft.sqlserver.jdbc.SQLServerDriver(2005版本及以后)
com.microsoft.jdbc.sqlserver.SQLServerDriver(2000版本)
jdbcUrl:jdbc:sqlserver://192.168.0.1:1433;databasename=yourDBName
四、Sybase:
driverClass:com.sybase.jdbc3.jdbc.SybDriver
com.sysbase.jdbc.SybDriver
jdbcUrl:jdbc:sybase:Tds:127.0.0.1:5007/myDB
五、DB2:
1、db2java.zip
driverClass:COM.ibm.db2.jdbc.net.DB2Driver
jdbcUrl:jdbc:db2://127.0.0.1:5000/DBNAME
2、db2jcc.jar
driverClass:com.ibm.db2.jcc.DB2Driver
jdbcUrl:jdbc:db2://127.0.0.1:5000/DBNAME
3、
driverClass:com.ibm.db2.jdbc.app.DB2DriverjdbcUrl:jdbc:db2://127.0.0.1:5000/yourDBName
六、Informix:
driverClass:com.informix.jdbc.IfxDriver
jdbcUrl:jdbc:informix-sqli://127.0.0.1:1533/yourDBName:informixserver=myserver;user=test;password=test123
七、PostgreSQL:
driverClass:org.postgresql.Driver
jdbcUrl:jdbc:postgresql://127.0.0.1:5432/yourDBName
八、Access:
driverClass:sun.jdbc.odbc.JdbcOdbcDriver
jdbcUrl:jdbc:odbc:dataSourceName
九、Memcached:
driverClass:
jdbcUrl:
十、MongoDB:
driverClass:
jdbcUrl:
十一、Redis:
driverClass:
jdbcUrl:
十二、SQLite:
driverClass:
jdbcUrl:
driverClass:
jdbcUrl: