IDEA使用JDBC连接MySQL数据库详细教程

文章目录

  • 创建项目
  • 导入驱动
  • 让导入的驱动生效
  • 注册数据库驱动,连接数据库

创建项目

首先需要保证你已经成功安装mysql和下载连接MySQL数据库的驱动

  • 在IDEA里面创建一个java项目,选择创建Java项目,JDK这里选择1.8,直接Next

IDEA使用JDBC连接MySQL数据库详细教程_第1张图片

  • 勾选按模板创建,Next

IDEA使用JDBC连接MySQL数据库详细教程_第2张图片

  • 输入项目名称和项目地址,Finish

IDEA使用JDBC连接MySQL数据库详细教程_第3张图片

  • 项目创建完成的界面如下

IDEA使用JDBC连接MySQL数据库详细教程_第4张图片

导入驱动

  • 在项目中建一个名为lib(名称建议就用lib)的文件夹
    IDEA使用JDBC连接MySQL数据库详细教程_第5张图片

  • 对之前下载来的zip文件进行解压(mysql-connector-java-5.1.12.jar ),并进入解压出来的文件夹

  • 复制其中的mysql-connector-java-5.1.12.jar文件,在lib文件夹上右键,粘贴到IDEA中,刚刚新建的lib文件夹里
    IDEA使用JDBC连接MySQL数据库详细教程_第6张图片

让导入的驱动生效

  • 在IDEA中点击 File——Project Structure

IDEA使用JDBC连接MySQL数据库详细教程_第7张图片

  • 其中的 Module 模块,Dependencies 选项卡IDEA使用JDBC连接MySQL数据库详细教程_第8张图片
  • 点击最右边的加号(+),选择 JARS or directories
  • 在弹出的窗口中选择刚刚导入 lib 文件夹的驱动,点击Ok
  • 可以看到Module模块中,多出了一个mysql驱动,最后点击Apply,然后Ok
    IDEA使用JDBC连接MySQL数据库详细教程_第9张图片

注册数据库驱动,连接数据库

  • 首先在mysql中创建数据库,我创建的数据库名为couerseadmin,同时插入数据表
  • 在src下新建一个LinkDatabseInsert类
import java.sql.Connection;
import java.sql.DriverManager;

public class LinkDatabase {
    public static Connection getConn() {
        // TODO Auto-generated method stub
        String driverName="com.mysql.jdbc.Driver";
        //String driverName="org.git.mm.mysql.Driver";
        String dbURL="jdbc:mysql://localhost:3306/courseadmin";
        String userName="root";
        String userPwd="123456";
        Connection conn=null;
        try {
            Class.forName(driverName);
            conn= DriverManager.getConnection(dbURL,userName,userPwd);
            System.out.println("数据库连接成功");
        }catch(Exception e) {
            System.out.println("数据库连接失败");
        }
        return conn;
    }
}
  • 在src下新建一个DatabseInsertOperation类
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

public class DatabaseOperation {
    public static List<Course> findCouInfo(){
        List<Course> courses=new ArrayList<Course>();
        Connection conn=LinkDatabase.getConn();
        if(conn==null){
            return null;
        }
        String sql = "select * from course ";
        try {
            PreparedStatement pst=conn.prepareStatement(sql);
            ResultSet results=pst.executeQuery();
            while(results.next()){
                int no=results.getInt("no");
                String name=results.getString("name");
                double score=results.getDouble("score");
                Course c=new Course(no,name,score);
                courses.add(c);
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return courses;
    }

}

Course类

public class Course {
    private int no;
    private String name;
    private double score;
    public Course(int no,String name,double score) {
        this.no=no;
        this.name=name;
        this.score=score;
    }
    public Course(String name,double score) {
        this.name=name;
        this.score=score;
    }
    public int getNo() {
        return no;
    }
    public void setNo(int no) {
        this.no = no;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public double getScore() {
        return score;
    }
    public void setScore(double score) {
        this.score = score;
    }

    @Override
    public String toString() {
        return "Course{" +
                "no=" + no +
                ", name='" + name + '\'' +
                ", score=" + score +
                '}';
    }
}

main方法

import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        List<Course> courses=new ArrayList<Course>();
        courses=DatabaseOperation.findCouInfo();
        for(Course c:courses){
            System.out.println(c);
        }
    }
}

结果:
IDEA使用JDBC连接MySQL数据库详细教程_第10张图片
说明jdbc运行成功

你可能感兴趣的:(mysql,idea,big,data)