zoukankan      html  css  js  c++  java
  • Java连接MYSQL【转载】

    这篇文章主要以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.5mysql-connector-java-5.0.5-bin.jar加到最后,在加这个字符串前要加“;”,以与前一个classpath区分开。然后确定。
    环境配置好了,很简单。现在,先配置MySQL,设其用户名为“root”,密码为“root”。在命令行或用一个SQL的前端软件创建Database。我是用SQLyog的前端软件来创建Database的。
    先创建数据库:

    1 CREATE DATABASE SCUTCS;

    接着,创建表:

    1 CREATE TABLE STUDENT
    2 (
    3     SNO CHAR(7) NOT NULL,
    4     SNAME VARCHAR(8) NOT NULL,
    5     SEX CHAR(2) NOT NULL,
    6     BDATE DATE NOT NULL,
    7     HEIGHT DEC(5,2) DEFAULT 000.00,
    8     PRIMARY KEY(SNO)
    9 );

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

    也可以用SQLyog来操作

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

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

    接下来我们运行一下看下效果:
    D: estjdbc>javac JDBCTest.java
    D: estjdbc>java JDBCTest
    Succeeded connecting to the Database!
    -----------------------
    执行结果如下所示:
    -----------------------
    学号 姓名
    -----------------------
    0104421 周远行
    0208123 王义平
    0209120 王大力
    0309119 李 维
    0309203 欧阳美林

  • 相关阅读:
    86. Partition List
    328. Odd Even Linked List
    19. Remove Nth Node From End of List(移除倒数第N的结点, 快慢指针)
    24. Swap Nodes in Pairs
    2. Add Two Numbers(2个链表相加)
    92. Reverse Linked List II(链表部分反转)
    109. Convert Sorted List to Binary Search Tree
    138. Copy List with Random Pointer
    为Unity的新版ugui的Prefab生成预览图
    ArcEngine生成矩形缓冲区
  • 原文地址:https://www.cnblogs.com/dekevin/p/3602752.html
Copyright © 2011-2022 走看看