zoukankan      html  css  js  c++  java
  • java连接MYSQL [转]

    Java连接数据库(以MySQL为例)2007-04-05 02:23           这篇文章主要以MySQL为例讲下Java如何连接到数据库的。

               当然,首先要安装有JDK(一般是JDK1.5.X)。然后安装MySQL,这些都比较简单,具体过程就不说了。配置好这两个环境后,下载JDBC驱动mysql-connector-java-5.0.5.zip(这个是最新版的)。然后将其解压缩到任一目录。我是解压到D盘,然后将其目录下的mysql-connector-java-5.0.5-bin.jar加到classpath里,具体如下:“我的电脑”-> “属性” ->           “高级” ->           “环境变量”,在系统变量那里编辑classpath,将D:\mysql-connector-java-5.0.5\mysql-connector-java-5.0.5-bin.jar加到最后,在加这个字符串前要加“;”,以与前一个classpath区分开。然后确定。

               环境配置好了,很简单。现在,先配置MySQL,设其用户名为“root”,密码为“root”。在命令行或用一个SQL的前端软件创建Database。

    我是用SQLyog的前端软件来创建Database的。

    先创建数据库:

    CREATE DATABASE SCUTCS;

    接着,创建表:

    CREATE TABLE STUDENT

    (

    SNO CHAR(7) NOT NULL,

       SNAME VARCHAR(8) NOT NULL,

       SEX CHAR(2) NOT NULL,

       BDATE DATE NOT NULL,

       HEIGHT DEC(5,2) DEFAULT 000.00,

       PRIMARY KEY(SNO)

    );

    然后插入数据,可以用SQL语句insert into <表名> values           (value1, value2, ...);

    也可以用SQLyog来操作

    好了,创建好了。

    下面,我们来编写.java文件来演示一下如何访问MySQL数据库。

     1 import java.sql.*;
     2 
     3 public class JDBCTest {
     4 
     5 public static void main(String[] args){
     6 
     7            // 驱动程序名
     8            String driver = "com.mysql.jdbc.Driver";
     9 
    10            // URL指向要访问的数据库名scutcs
    11            String url = "jdbc:mysql://127.0.0.1:3306/scutcs";
    12 
    13            // MySQL配置时的用户名
    14            String user = "root"; 
    15   
    16            // MySQL配置时的密码
    17            String password = "root";
    18 
    19            try { 
    20             // 加载驱动程序
    21             Class.forName(driver);
    22 
    23             // 连续数据库
    24             Connection conn = DriverManager.getConnection(url, user, password);
    25 
    26             if(!conn.isClosed()) 
    27              System.out.println("Succeeded connecting to the Database!");
    28 
    29             // statement用来执行SQL语句
    30             Statement statement = conn.createStatement();
    31 
    32             // 要执行的SQL语句
    33             String sql = "select * from student";
    34 
    35             // 结果集
    36             ResultSet rs = statement.executeQuery(sql);
    37 
    38             System.out.println("-----------------");
    39             System.out.println("执行结果如下所示:");
    40             System.out.println("-----------------");
    41             System.out.println(" 学号" + "\t" + " 姓名");
    42             System.out.println("-----------------");
    43 
    44             String name = null;
    45 
    46             while(rs.next()) {
    47     
    48              // 选择sname这列数据
    49              name = rs.getString("sname");
    50     
    51              // 首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。
    52              // 然后使用GB2312字符集解码指定的字节数组
    53              name = new String(name.getBytes("ISO-8859-1"),"GB2312");
    54 
    55              // 输出结果
    56              System.out.println(rs.getString("sno") + "\t" + name);
    57             }
    58 
    59             rs.close();
    60             conn.close();
    61 
    62            } catch(ClassNotFoundException e) {
    63 
    64 
    65             System.out.println("Sorry,can`t find the Driver!"); 
    66             e.printStackTrace();
    67 
    68 
    69            } catch(SQLException e) {
    70 
    71 
    72             e.printStackTrace();
    73 
    74 
    75            } catch(Exception e) {
    76 
    77 
    78             e.printStackTrace();
    79 
    80 
    81            } 
    82 } 
    83 }

    接下来我们运行一下看下效果:

    D:\testjdbc>javac JDBCTest.java

    D:\testjdbc>java JDBCTest
    Succeeded connecting to the Database!
    -----------------------
    执行结果如下所示:
    -----------------------
        学号           姓名
    -----------------------
    0104421    周远行
    0208123    王义平
    0209120    王大力
    0309119    李     维
    0309203    欧阳美林

    哈哈,成功啦

    [转] http://www.cnblogs.com/soplayer/archive/2007/06/26/796565.html

  • 相关阅读:
    nodeJS从入门到进阶三(MongoDB数据库)
    nodeJS从入门到进阶二(网络部分)
    nodeJS实现简易爬虫
    nodeJS从入门到进阶一(基础部分)
    js节流与防抖函数封装
    React16源码解读:揭秘ReactDOM.render
    React16源码解读:开篇带你搞懂几个面试考点
    TypeScript高级用法详解
    一文搞懂V8引擎的垃圾回收
    JavaScript的内存模型
  • 原文地址:https://www.cnblogs.com/longdouhzt/p/2577134.html
Copyright © 2011-2022 走看看