mysql与java的连接(Java 连接MySQL)

发布时间:2022-11-15

本文目录一览:

  1. 怎样用java连接mysql
  2. java怎么连接mysql
  3. java是怎么连接mysql数据库的
  4. 如何连接java和mysql数据库

怎样用java连接mysql

//就只有4个步骤:1.加载驱动;2.链接数据库;3.执行命令;4.关闭数据库;

import java.sql.*;  
class MysqlConnection {  
    /*要是更换数据库,就直接更换这些语句就行了,main函数的那些都不用动的,主要是驱动(DBDRIVER)和链接方式(DBURL)*/
    private static String DBDRIVER = "org.gjt.mm.mysql.Driver"; //这个是与下载jdbc-mysql里面的那个driver.class文件是对应的,你可以解压找下,会发觉驱动就是那个鬼东西的。。
    private static String DBURL = "jdbc:mysql://localhost:3306/study"; 
    /*  
    jdbc:mysql://localhost:3306:test这句里面分如下解析:
    jdbc:mysql:// 是指JDBC连接方式;
    localhost: 是指你的本机地址;
    3306 是SQL数据库的端口号;
    study 就是要连接的数据库的地址。
    你可以试下不要这个'study',或者胡乱接一个不存在的数据库,
    然后还可以执行下面语句来实现连接数据库(a)
    */
    private static String DBUSER = "scott";  
    private static String DBPASSWORD = "tiger";  
    public static void main(String[] args) throws Exception {  
        Class.forName(DBDRIVER); //1.加载驱动  
        Connection conn = DriverManager.getConnection(DBURL, DBUSER, DBPASSWORD); //2.获得链接  
        Statement statement = conn.createStatement(); //3.执行命令  
        //statement.executeUpdate("use study"); //(a)要是没有上面的那个数据库,就要使用这个函数来连接数据库  
        ResultSet result = statement.executeQuery("SELECT * FROM emp"); //结果收集,迭代  
        while(result.next()){  
            printf(result.getObject(1)+" ");  
            printf(result.getObject(2)+" ");  
            printf(result.getObject(3)+" ");  
            printf(result.getObject(4)+"\n");  
        }  
        conn.close();  
    }  
    public static void printf(Object obj){  
        System.out.print(obj);  
    }  
    public static void printfln(Object obj){  
        System.out.println(obj);  
    }  
}

java怎么连接mysql

import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Connection;
import java.sql.Statement;
public class MysqlDemo {
    public static void main(String[] args) throws Exception {
        Connection conn = null;
        String sql;
        // MySQL的JDBC URL编写方式:jdbc:mysql://主机名称:连接端口/数据库的名称?参数=值
        // 避免中文乱码要指定useUnicode和characterEncoding
        // 执行数据库操作之前要在数据库管理系统上创建一个数据库,名字自己定,
        // 下面语句之前就要先创建javademo数据库
        String url = "jdbc:mysql://localhost:3306/javademo?" 
            + "user=rootpassword=rootuseUnicode=truecharacterEncoding=UTF8";
        try {
            // 之所以要使用下面这条语句,是因为要使用MySQL的驱动,所以我们要把它驱动起来,
            // 可以通过Class.forName把它加载进去,也可以通过初始化来驱动起来,下面三种形式都可以
            Class.forName("com.mysql.jdbc.Driver"); // 动态加载mysql驱动
            // or:
            // com.mysql.jdbc.Driver driver = new com.mysql.jdbc.Driver();
            // or:
            // new com.mysql.jdbc.Driver();
            System.out.println("成功加载MySQL驱动程序");
            // 一个Connection代表一个数据库连接
            conn = DriverManager.getConnection(url);
            // Statement里面带有很多方法,比如executeUpdate可以实现插入,更新和删除等
            Statement stmt = conn.createStatement();
            sql = "create table student(NO char(20),name varchar(20),primary key(NO))";
            int result = stmt.executeUpdate(sql); // executeUpdate语句会返回一个受影响的行数,如果返回-1就没有成功
            if (result != -1) {
                System.out.println("创建数据表成功");
                sql = "insert into student(NO,name) values('2012001','陶伟基')";
                result = stmt.executeUpdate(sql);
                sql = "insert into student(NO,name) values('2012002','周小俊')";
                result = stmt.executeUpdate(sql);
                sql = "select * from student";
                ResultSet rs = stmt.executeQuery(sql); // executeQuery会返回结果的集合,否则返回空值
                System.out.println("学号\t姓名");
                while (rs.next()) {
                    System.out.println(rs.getString(1) + "\t" + rs.getString(2)); // 如果返回的是int类型可以用getInt()
                }
            }
        } catch (SQLException e) {
            System.out.println("MySQL操作错误");
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            conn.close();
        }
    }
}

java是怎么连接mysql数据库的

  1. java连接MySQL数据库需要有一个驱动jar包
    例如:mysql-connector-java-5.1.26-bin.jar,该驱动jar可以自行百度搜索最新包下载放在项目的lib目录下即可。
  2. 连接代码如下
package baidu.test.jsp;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.naming.spi.DirStateFactory.Result;
public class DbConnection {
    private static Connection conn;
    public DbConnection() {
        String drivername = "com.mysql.jdbc.Driver";
        String username = "root";
        String url = "jdbc:mysql://localhost/jsptest?useUnicode=truecharacterEncoding=UTF-8";
        String password = "";
        // 加载驱动
        try {
            Class.forName(drivername);
        } catch (ClassNotFoundException e) {
            System.out.println("驱动加载失败!");
            e.printStackTrace();
        }
        // 建立连接
        try {
            conn = DriverManager.getConnection(url, username, password);
        } catch (SQLException e) {
            System.out.println("数据库连接失败!");
            e.printStackTrace();
        }
    }
    // getResultSet
    public ResultSet GetResultSet(String sql) {
        ResultSet rs = null;
        // statemanage
        try {
            Statement st = conn.createStatement();
            rs = st.executeQuery(sql);
        } catch (SQLException e) {
            System.out.println("状态管理器创建失败");
            e.printStackTrace();
        }
        return rs;
    }
    // DML
    public int DML(String sql) {
        int count = -1;
        try {
            Statement statement = conn.createStatement();
            count = statement.executeUpdate(sql);
        } catch (SQLException e) {
            System.out.println("状态管理器创建失败");
            e.printStackTrace();
        }
        return count;
    }
}
  1. 可以新建service类来调用连接类里面的方法,实现自己所需用的功能。

如何连接java和mysql数据库

当然,首先要安装有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数据库。

import java.sql.*;
public class JDBCTest {
    public static void main(String[] args){
        // 驱动程序名
        String driver = "com.mysql.jdbc.Driver";
        // URL指向要访问的数据库名scutcs
        String url = "jdbc:mysql://127.0.0.1:3306/scutcs";
        // MySQL配置时的用户名
        String user = "root";
        // MySQL配置时的密码
        String password = "root";
        try {
            // 加载驱动程序
            Class.forName(driver);
            // 连接数据库
            Connection conn = DriverManager.getConnection(url, user, password);
            if(!conn.isClosed())
                System.out.println("Succeeded connecting to the Database!");
            // statement用来执行SQL语句
            Statement statement = conn.createStatement();
            // 要执行的SQL语句
            String sql = "select * from student";
            // 结果集
            ResultSet rs = statement.executeQuery(sql);
            System.out.println("-----------------");
            System.out.println("执行结果如下所示:");
            System.out.println("-----------------");
            System.out.println(" 学号" + "\t" + " 姓名");
            System.out.println("-----------------");
            String name = null;
            while(rs.next()) {
                // 选择sname这列数据
                name = rs.getString("sname");
                /* 何问起 hovertree.com */
                // 首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。
                // 然后使用GB2312字符集解码指定的字节数组
                name = new String(name.getBytes("ISO-8859-1"),"GB2312");
                // 输出结果
                System.out.println(rs.getString("sno") + "\t" + name);
            }
            rs.close();
        }
    }
}