美文网首页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