JDBC中5种常见数据库连接
jopen
10年前
JDBC Connection的获取,主要介绍:开发中常用的5种数据库的连接获取,Sqlserver、PostgreSQL、MySQL、Oracle、SQLite 开发过程中JDBC虽然不是必须的,但是这种基础知识必须烂熟于心。
JDBC在开发中很少直接使用(持久化层有许多杰出的框架,如:Hibernate、mybatis...),但这又是Java程序员必须清楚的基础知识,下面是一些知识的基类,方便以后复习时使用。
Java对数据库的操作主要以下几步
1)加载驱动,获取数据库连接
2)开启事务
3)创建语句
4)批量执行操作或执行查询获取结果集,处理结果
5)提交事务
6)关闭连接
第一步:加载驱动类,获取数据库连接,条件是要有对应的第三方jar包
1)、Sqlserver ,需要 sqljdbc4.jar
try { String username = "sa"; // 用户名 String password = "123"; // 密码 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");// 加载驱动类 con = DriverManager.getConnection("jdbc:sqlserver://192.168.4.116:1433;DatabaseName=UniMonDB",username,password);// 获取连接 } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); }
2)MySQL ,需要mysql-connector-java-5.1.6-bin.jar
try { String username = "sa"; // 用户名 String password = "123456"; // 密码 Class.forName("com.mysql.jdbc.Driver");// 加载驱动类 Connection con = DriverManager .getConnection( "jdbc:mysql://192.168.4.116:55555/emm_manager", username, password);// 获取连接 System.out.println(con); con.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); }
3)PostgreSQL,需要 postgresql-9.0-801.jdbc3.jar
try { String username = "sa"; // 用户名 String password = "123456"; // 密码 Class.forName("org.postgresql.Driver");// 加载驱动类 Connection con = DriverManager .getConnection( "jdbc:postgresql://192.168.4.10:5432/UniMonDB", username, password);// 获取连接 System.out.println(con); con.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); }
4)Oracle , 需要ojdbc14.jar
try { String username = "sa"; // 用户名 String password = "123456"; // 密码 Class.forName("oracle.jdbc.driver.OracleDriver"); Connection con = DriverManager.getConnection( "jdbc:oracle:thin:@192.168.0.39:1521:TARENADB", username, password);// 获取连接 System.out.println(con); con.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); }
5)SQLite , 需要 sqlitejdbc-v033-nested.jar
try { Class.forName("org.sqlite.JDBC"); // 加载驱动 Connection con = DriverManager.getConnection( "jdbc:sqlite://d:/sqlite/learnsqlite.db");// 获取连接 System.out.println(con); con.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); }
第二步:设置事务提交
con.setAutoCommit(false); //.................数据库操作(增删改) con.commit();
来自:http://my.oschina.net/u/1989321/blog/355124