美文网首页Java
IDEA中连接MySQL

IDEA中连接MySQL

作者: 满庭花醉三千客 | 来源:发表于2019-03-20 17:53 被阅读0次

上篇完成了MySQL的安装以及终端的简单命令,接下来我们看看如何集成到IDEA中。

首先,打开IDEA,找到View-Tool Windows-Database

屏幕快照 2018-12-25 下午5.36.22.png

然后界面的右侧会出现Database模块,点击+,然后选择Data Source,然后选择MySQL:

屏幕快照 2018-12-25 下午5.37.04.png

然后进入这个界面,填写好连接的数据库名称、用户名、密码:

屏幕快照 2018-12-27 上午10.06.46 2.png

此时“Test Connection”不可用,底部有一个warning(Download missing driver files),我们点击“Download”,然后会下载文件:

屏幕快照 2018-12-25 下午5.40.15.png

完成后:

屏幕快照 2018-12-27 上午10.06.46.png

此时URL模块中“Test connection”可用了,我们点击试一下:

屏幕快照 2018-12-27 上午10.07.02.png

此时出现绿色的提示,我们Successful了,点击OK之后:

屏幕快照 2018-12-27 上午10.25.29.png

界面的右侧出现了数据库,点击展开能看到数据库的表,以及表中的字段。

接下来我们需要前往https://dev.mysql.com/downloads/connector/j/5.1.html下载一个 mysql-connector-java文件。

屏幕快照 2018-12-27 下午1.59.14.png

下载完成后,打开下载的包:

屏幕快照 2018-12-27 下午2.03.23.png

把mysql-connector-java-5.1.47-bin.jar拷贝出来,放到SDK的根目录的bin目录下。至于SDK的根目录在哪里,我们打开IDEA-File-Project Structure-SDK

屏幕快照 2018-12-27 下午2.16.26.png

就是那个JDK home path。然后找到Home中的lib文件夹,放入该文件夹中:

屏幕快照 2018-12-27 下午2.07.40.png

然后我们去IDEA中,打开File-Project Stucture -SDK:

屏幕快照 2018-12-27 下午2.09.30.png

把mysql-connector-java添加进来即可。

然后我们编码:

package com.bianla.demotestspringboot;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

import org.springframework.web.bind.annotation.RestController;

import java.security.PublicKey;

import java.sql.*;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

@RestController

public class StudentController {

    @RequestMapping(value = "api/queryAllStudent",method = RequestMethod.GET)

    public Object queryStudent(){

        //创建连接器,用完即关

        Connection con;

        //数据库驱动,com.mysql.jdbc.Driver该字段不变

        String driver = "com.mysql.jdbc.Driver";

        //本地数据库的地址 wl_test_database是我的数据库名称

        String url = "jdbc:[mysql://localhost:3306/wl_test_database";](mysql://localhost:3306/wl_test_database)

        //用户名

        String user = "root";

        //用户root的密码,这里是我设置的密码

        String password = "Aa123456";

        Map <String,Object> map = new HashMap<String, Object>();

        try {

            //相当于 new com.mysql.jdbc.Driver(),在环境中创建此对象,如果没有该类,则抛出ClassNotFoundException。

            //如果catch的类别中中没有设置ClassNotFoundException,则会报错

            Class.forName(driver);

            //使用url、用户名、密码进行连接

            con = DriverManager.getConnection(url,user,password);

            if (!con.isClosed()){

                System.out.println("数据库连接成功");

            }

            //与数据库连接后,使用statement发送SQL语句

            Statement statement = con.createStatement();

            //具体的操作语句

            String sql = "select * from wl_table";

            //执行查询。ResultSet(结果集)是数据查询返回的一种对象

            ResultSet resultSet = statement.executeQuery(sql);

            //接收查询结果的属性

            String name;

            int age;

            double score;

            //把数据包装一下

            List <Object> dataList = new ArrayList<Object>();

            while (resultSet.next()){

                Map <String,Object> itemMap = new HashMap<String, Object>();

                //从结果集中获取到name、age、score

                name = resultSet.getString("name");

                age = resultSet.getInt("age");

                score = resultSet.getDouble("score");

                System.out.println("姓名:"+name+" 年龄:"+age+" 分数:"+score);

                itemMap.put("name",name);

                itemMap.put("age",age);

                itemMap.put("score",score);

                dataList.add(itemMap);

            }

            resultSet.close();

            con.close();

            //将结果返回

            map.put("code","1");

            map.put("data",dataList);

            map.put("message","Query success");

            return map;

        } catch (SQLException e){

            System.out.println("数据库连接失败");

        } catch (ClassNotFoundException e){

            System.out.println("数据库驱动没有安装");

        }

        //查询失败

        map.put("code","0");

        map.put("data","");

        map.put("message","Query failed");

        return map;

    }

}

接下来我们使用safari调用一下:

屏幕快照 2018-12-27 下午4.02.47.png 屏幕快照 2018-12-27 下午4.03.05.png

在IDEA中的打印信息:

屏幕快照 2018-12-27 下午3.47.18.png

我们使用iOS调用一下:

屏幕快照 2018-12-27 下午5.39.49.png

加油~

相关文章

网友评论

    本文标题:IDEA中连接MySQL

    本文链接:https://www.haomeiwen.com/subject/kgptvqtx.html