我思故我在我有我精彩--liangqihui

爱欲追而情已逝,子欲孝而亲不待。人生的困苦又怎能用一个难字囊尽百味
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Java连接数据库谈

Posted on 2005-07-28 17:19  挥辉  阅读(481)  评论(0编辑  收藏  举报

Java连接数据库谈

 

   日常的时候,经常有同学问有关如何连接到数据库的问题,现在写下来,希望对有的人,有些帮助。

   1. 加载一个对应数据库的JDBC驱动

   在建立到一个数据库的连接之前,必须先加载这个数据库的JDBC驱动程序,加载之后此driver会自动注册到JDBC驱动列表中。加载一个JDBC驱动有两种方法。


 a) 在命令行方式下指定驱动器或者用冒号分割驱动器列表:

  具体命令如下:

C:\>java –Djdbc.drivers = com.company1.Driver:com.company2.Driver youProject


b)第二种方法,在程序中调用Class.forName()方法。推荐使用。。。。

try

  {

   String driverName = “com.imaginary.sql.msql.MsqlDriver”;

   Class.forName(driverName).newInstance();

  }

Catch(ClassNotFoundException e1)

{

//catch could not find database driver exception.

   }

  2.连接到数据库。

   根据您后台待连接的数据库不同,而有小小的差别。

   a) 连接到Oracle数据库。

  Connection connection = null ;

  try

  {

   //load the jdbc driver ;

   String driverName = “oracle.jdbc.driver.OracleDriver”;

   Class.forName(driverName).newInstance();

   //create a connection to the database;

   String serverName = “127.0.0.1”;

   String serverPort = “1521”;

   String serverID = “datebase1”

   String userName = “hello”;

   String userPsw = “world”;

   String url = “jdbc:oracle.thin:@” + serverName + “:” + serverPort + “:” + serverID ;

   Connection = DriverManager.getConnection(url , userName , userPsw);

  }

  catch(ClassNotFoundException e1)

  {

   //catch could not find database driver exception.

  }

  catch(SQLException e2)

  {

   //catch could not connect to the database exception.

  }

    b) 连接到一个SQL Server数据库。          

  Connection connection = null ;

  try

  {

   //load the jdbc driver ;

   String driverName = “com.microsoft.jdbc.sqlserver.SQLServerDriver”;

   Class.forName(driverName).newInstance();

   //create a connection to the database;

   String serverName = “127.0.0.1”;

   String serverPort = “1433”;

   String serverID = serverName + serverPort ;

   String userName = “hello”;

   String userPsw = “world”;

   String url = “jdbc:JSQLConnect ://” + serverID ;

   Connection = DriverManager.getConnection(url , userName , userPsw);

  }

  catch(ClassNotFoundException e1)

  {

   //catch could not find database driver exception.

  }

  catch(SQLException e2)

  {

   //catch could not connect to the database exception.

  }

  c) 连接到一个MySQL数据库上。。。。

Connection connection = null ;

  try

  {

   //load the jdbc driver ;

   String driverName = “org.gjt.mm.mysql.Driver”;

   Class.forName(driverName).newInstance();

   //create a connection to the database;

   String serverName = “127.0.0.1”;

   String serverID = “database”;

   String userName = “hello”;

   String userPsw = “world”;

   String url = “jdbc:mysql ://” + serverName + “/” + serverID ;

   Connection = DriverManager.getConnection(url , userName , userPsw);

  }

  catch(ClassNotFoundException e1)

  {

   //catch could not find database driver exception.

  }

  catch(SQLException e2)

  {

   //catch could not connect to the database exception.

  }

   综合上面的三种数据库连接方式 , 其实大同小异。由于访问不同的数据库和所使用的数据库驱动程序不同,所以导致代码表面上有小小不同,但透过表面看来,内部都是

  1. 加载一个特定的数据库JDBC驱动。

  2. 连接到一个数据库。

  3. 之后,就可以对一个特定的数据库进行特定的操作了。