得做有氧 2019-02-21 10:07 采纳率: 0%
浏览 1005

请问大神为什么我的JDBC连接不上数据库?

public static void main(String[] args) {

    Connection conn = null;
    Statement stmt = null ;
    ResultSet rs = null;

    try {
        Class.forName("com.mysql.jdbc.Driver");
        Driver driver = new com.mysql.jdbc.Driver();
        DriverManager.registerDriver(driver);

        String url = "jdbc:mysql:localhost:3366/huae";
        String user = "root";
        String password = "1234";

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

        stmt = conn.createStatement();

        String sql = "Select e.ename,d.dname from emp e join dept d on e.deptno = d.deptno";
        rs = stmt.executeQuery(sql);

        while(rs.next()){
            String ename = rs.getString("ename");
            String dname = rs.getString("dname");
            System.out.println(ename+" "+dname);
        }
    } catch (Exception e) {
        // TODO: handle exception
    }finally{
        if(rs!= null){
            try {
                rs.close();
            } catch (Exception e2) {
                // TODO: handle exception
            }
        }
        if(stmt!=null){
            try {
                stmt.close();
            } catch (Exception e2) {
                // TODO: handle exception
            }
        }
        if(conn!=null){
            try {
                conn.close();
            } catch (Exception e2) {
                // TODO: handle exception
            }
        }
    }
}

}

  • 写回答

2条回答 默认 最新

  • 愤怒绵羊 2019-02-21 10:56
    关注
    // 1. 注册驱动
    
        Class.forName("com.mysql.jdbc.Driver");
        // 2. 获得连接
        // uri:数据库地址 jdbc:mysql://连接主机ip:端口号//数据库名字
        String url = "jdbc:mysql://localhost:3306/itheima";
        // static Connection getConnection(String url, String user, String password)
        // 返回值是java.sql.Connection接口的实现类,在MySQL驱动程序中
        Connection conn = DriverManager.getConnection(url, "root", "root");
        System.out.println(conn);// com.mysql.jdbc.JDBC4Connection@10d1f30
        // 3. 获得语句执行平台,通过数据库连接对象,获取到SQL语句的执行者对象
        //conn对象,调用方法 Statement createStatement() 获取Statement对象,将SQL语句发送到数据库
        //返回的是Statement接口的实现类对象,在MySQL驱动程序中
        Statement stat = conn.createStatement();
        System.out.println(stat);//com.mysql.jdbc.StatementImpl@137bc9
        // 4. 执行sql语句
        //通过执行者对象调用方法执行SQL语句,获取结果
        //int executeUpdate(String sql)  执行数据库中的SQL语句,仅限于insert,update,delete
        //返回值int,操作成功数据库的行数
        int row = stat.executeUpdate("INSERT INTO sort(sname,sprice,sdesc) VALUES('汽车用品',50000,'疯狂涨价')");
        System.out.println(row);
        // 5. 释放资源
        stat.close();
        conn.close();
    

    String url = "jdbc:mysql:localhost:3366/huae"; 你这个写的不对吧

    评论

报告相同问题?

悬赏问题

  • ¥15 有卷积神经网络识别害虫的项目吗
  • ¥15 数据库数据成问号了,前台查询正常,数据库查询是?号
  • ¥15 算法使用了tf-idf,用手肘图确定k值确定不了,第四轮廓系数又太小才有0.006088746097507285,如何解决?(相关搜索:数据处理)
  • ¥15 彩灯控制电路,会的加我QQ1482956179
  • ¥200 相机拍直接转存到电脑上 立拍立穿无线局域网传
  • ¥15 (关键词-电路设计)
  • ¥15 如何解决MIPS计算是否溢出
  • ¥15 vue中我代理了iframe,iframe却走的是路由,没有显示该显示的网站,这个该如何处理
  • ¥15 操作系统相关算法中while();的含义
  • ¥15 CNVcaller安装后无法找到文件