码迷,mamicode.com
首页 > 数据库 > 详细

java通过JDBC连接mysql数据库

时间:2015-12-02 01:10:32      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:数据库   java   database   mysql   jdbc   

第一步:下载mysql驱动,网址

http://dev.mysql.com/downloads/connector/j/

第二步:讲mysql驱动mysql-connector-java-5.0.5-bin.jar加入到项目的lib目录或者将该文件的路径加入到classpath环境变量里面

第三步:建立数据库

1、安装mysql

2、建立数据库:create database test;

3、创建表:

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)  
);

4、插入数据

第四步:java程序编写

1、加载驱动:加载想要连接的数据库的驱动到JVM,通过java.lang.Class类的静态方法forName(String className)来实现,加载成功后,Driver类的实例就被注册到DriverManager中

 Class.forName("com.mysql.jdbc.Driver").newInstance(); 
 或者
 com.mysql.jdbc.Driver driver = new com.mysql.jdbc.Driver();
 或者
 new com.mysql.jdbc.Driver();

2、创建连接对象,该对象就是一个数据库连接

Connection con = DriverManager.getConnection("url", "user", "passwrod");

其中MySQL的JDBC URL编写方式:jdbc:mysql://主机名称:连接端口/数据库的名称?参数=值,避免中文乱码要指定useUnicode和characterEncoding。

3、创建申明:创建一个java.sql.Statement实例,Statement实例分为以下三种类型:

     1、执行静态SQL语句。通常通过Statement实例实现。     

     2、执行动态SQL语句。通常通过PreparedStatement实例实现。     

     3、执行数据库存储过程。通常通过CallableStatement实例实现。     

   具体的实现方式:       

    Statement stmt = con.createStatement() ;  
   PreparedStatement pstmt = con.prepareStatement(sql) ; 
    CallableStatement cstmt = con.prepareCall("{CALL demoSp(? , ?)}") ;

4、执行数据库操作:Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate、和execute。     

    1、ResultSet executeQuery():执行查询数据库的SQL语句,返回一个结果集(ResultSet)对象。       2int executeUpdate():用于执行INSERT、UPDATE或DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等     

    3、execute():用于执行返回多个结果集、多个更新计数或二者组合的语句。     

具体实现代码:

5、处理结果:分两种情况

1执行更新返回的本次操作影响到的记录数

2执行查询返回的结果是一个ResultSet对象

    ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些行中数据的访问。     

    使用结果集(ResultSet)对象的访问方法获取数据:     

    while(rs.next()){     

        String name = rs.getString("name") ;     

        String pass = rs.getString(1) ;  

    }      

6、关闭JDBC对象:操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声明顺序相反:     

    1、关闭记录集     

    2、关闭声明     

    3、关闭连接对象 


以下是学习时测试代码:

package com.nudt.jdbc;

import java.net.ConnectException;
import java.sql.*;

public class DBUtilDemo{
    private static final String URL = "jdbc:mysql://127.0.0.1:3306/imooc";
    private static final String USER = "root";
    private static final String PASSWD= "nudt2013";

    private static Connection conn = null;

    static {
        try {
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection(URL,USER,PASSWD);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    public static Connection getConnection(){
        return conn;
    }

    public static void main (String args[])throws Exception{

        Statement stmt = conn.createStatement();
        ResultSet rs = stmt.executeQuery("select user_name,age from imooc_goddess");

        String result = null;
        while(rs.next()){
            result = "name:"+rs.getString("user_name")+";age:"+rs.getInt("age");
            System.out.println(result);
        }
    }
}


java通过JDBC连接mysql数据库

标签:数据库   java   database   mysql   jdbc   

原文地址:http://muyunzhe.blog.51cto.com/9164050/1718649

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!