zoukankan      html  css  js  c++  java
  • Java--JDBC连接与Django--DATABASES设置

    JDBC 简介

      JDBC(Java Data Base Connectivity,java 数据库连接)是一种用于执行 SQL 语句的 JavaAPI,可以为多种关系

    数据库提供统一访问,它由一组用 Java 语言编写的类和接口组成。JDBC 提供了一种基准,据此可以构建更高
    级的工具和接口,使数据库开发人员能够编写数据库应用程序。  

    JDBC 原理

      JDBC 原理:JDBC 是以前 SUN 公司定义的一套访问数据库的接口(没有具体实现),一套标准,具体的实现是由

    各大数据库厂家去实现,每个数据库厂家都有自己的 JDBC 实现,也就是 JDBC 驱动实现类,Java 应用程序连接
    指定数据库,需要使用厂家提供的 JDBC 驱动才能连接。(这里其实就是 java 多态的一种体现,一个接口可以有
    很多具体的实现)

    JDBC 连接数据库步骤

      第一步:加载驱动;
      第二步:连接数据库;
      第三步:使用语句操作数据库;
      第四步:关闭数据库连接,释放资源;

    在项目里配置数据库驱动

      右击项目 ->Build Path -> Configure Build Path -> Add Exteranl JARs...

      jar包下载地址: 链接:https://pan.baidu.com/s/1i5RLSQp 密码:i9o9

     1 package JDBC;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.SQLException;
     6 
     7 public class Demo {
     8     // 数据库地址
     9     private static String dbUrl="jdbc:mysql://localhost:3306/JavaJDBC";
    10     // 用户名
    11     private static String dbUserName="root";
    12     // 密码
    13     private static String dbPassword="root";
    14     // 驱动名称
    15     private static String jdbcName="com.mysql.jdbc.Driver";
    16     
    17     public static void main(String[] args) {
    18         try {
    19             Class.forName(jdbcName); //加载注册驱动,进入JVM
    20             System.out.println("加载驱动成功!");
    21         } catch (ClassNotFoundException e) {
    22             // TODO Auto-generated catch block
    23             e.printStackTrace();
    24             System.out.println("加载驱动失败!");
    25         }
    26         Connection con=null;
    27         try {
    28             // 获取数据库连接
    29             con=DriverManager.getConnection(dbUrl, dbUserName, dbPassword);
    30             System.out.println("获取数据库连接成功!");
    31             System.out.println("进行数据库操作!");
    32         } catch (SQLException e) {
    33             // TODO Auto-generated catch block
    34             e.printStackTrace();
    35         }finally{
    36             try {
    37                 con.close();
    38             } catch (SQLException e) {
    39                 // TODO Auto-generated catch block
    40                 e.printStackTrace();
    41             }
    42         }
    43     }
    44     
    45 }

     


    各种驱动的连接方法:
    1. MySQL(http://www.mysql.com)     mysql-connector-java-2.0.14-bin.jar ;
      Class.forName( "org.gjt.mm.mysql.Driver" );
      cn = DriverManager.getConnection( "jdbc:mysql://MyDbComputerNameOrIP:3306/myDatabaseName", sUsr, sPwd ); 
    2. PostgreSQL(http://www.de.postgresql.org)     pgjdbc2.jar ;
      Class.forName( "org.postgresql.Driver" ); 
      cn = DriverManager.getConnection( "jdbc:postgresql://MyDbComputerNameOrIP/myDatabaseName", sUsr, sPwd ); 
    3. Oracle(http://www.oracle.com/ip/deploy/database/oracle9i/) classes12.zip ;
      Class.forName( "oracle.jdbc.driver.OracleDriver" ); 
      cn = DriverManager.getConnection( "jdbc:oracle:thin:MyDbComputerNameOrIP:1521:ORCL", sUsr, sPwd ); 
    4. Sybase(http://jtds.sourceforge.net) jconn2.jar ;
      Class.forName( "com.sybase.jdbc2.jdbc.SybDriver" ); 
      cn = DriverManager.getConnection( "jdbc:sybase:Tds:MyDbComputerNameOrIP:2638", sUsr, sPwd ); 
      //(Default-Username/Password: "dba"/"sql") 
    5. Microsoft SQLServer(http://jtds.sourceforge.net) ;
      Class.forName( "net.sourceforge.jtds.jdbc.Driver" ); 
      cn = DriverManager.getConnection( "jdbc:jtds:sqlserver://MyDbComputerNameOrIP:1433/master", sUsr, sPwd ); 
    6. Microsoft SQLServer(http://www.microsoft.com) ;
      Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver" ); 
      cn = DriverManager.getConnection( "jdbc:microsoft:sqlserver://MyDbComputerNameOrIP:1433;databaseName=master", sUsr, sPwd ); 
    7. ODBC 
      Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" ); 
      Connection cn = DriverManager.getConnection( "jdbc:dbc:" + sDsn, sUsr, sPwd ); 
    8.DB2 Class.forName("com.ibm.db2.jdbc.net.DB2Driver"); 
      String url="jdbc:db2://192.9.200.108:6789/SAMPLE" 
      cn = DriverManager.getConnection( url, sUsr, sPwd ); 
    9.access由于access并不是作为一项服务运行,所以url的方法对他不适用。access可以通过odbc,也可以通过服务器映射路径的形式 找到.mdb文件,参见http://rmijdbc.objectweb.org/Access/access.html 
     


     

    数据库连接成功!!!

    对照python django mysql数据库连接:

    (不使用sqllite)

    settings.py:

    1 DATABASES = {
    2     'default': {
    3         'ENGINE': 'django.db.backends.mysql',
    4         'NAME': "Wxh",
    5         'USER': "root",
    6         'PASSWORD': "root",
    7         'HOST': "127.0.0.1",
    8     }
    9 }

     然后在models中设置表字段,

    makemigrations apps
    migrations apps
    即可对此数据库建表.
    注:从Java6(JDBC4)开始,可以不再加载注册驱动,可直接DriverManager获取连接对象

        

  • 相关阅读:
    JavaScript-Runoob:JavaScript 对象
    JavaScript-Runoob:JavaScript 数据类型
    JavaScript-Runoob:JavaScript 变量
    JavaScript-Runoob:JavaScript 注释
    JavaScript-Runoob:JavaScript 语句
    从word中复制内容包含图片到tinymce编辑器中
    从word中复制内容包含图片到xheditor编辑器中
    从word中复制内容包含图片到kindeditor编辑器中
    从word中复制内容包含图片到ckeditor编辑器中
    从word中复制内容包含图片到fckeditor编辑器中
  • 原文地址:https://www.cnblogs.com/LexMoon/p/JDBC.html
Copyright © 2011-2022 走看看