package cn.itcast.demo2;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;import org.junit.Test;public class Demo2 {/** 连接数据库,得到Connection就算成功!* 对数据库做增、删、改*/@Testpublic void fun1() throws ClassNotFoundException, SQLException {/** 一、得到Connection* 1. 准备四大参数* 2. 加载驱动类* 3. 得到Connection*/// 准备四大参数String driverClassName = "com.mysql.jdbc.Driver";// jdbc协议的格式!jdbc:工商的名称:子协议(由工商自己来规定)// 对mysql而言,它的子协议结构://主机:端口号/数据库名称String url = "jdbc:mysql://localhost:3306/mydb3";String username = "root";String password = "123";// 加载驱动类
        Class.forName(driverClassName);// 使用DriverManager,以及省下的3个参数,得到ConnectionConnection con = DriverManager.getConnection(url, username, password);/** 二、对数据库做增、删、改* 1. 通过Connection对象创建Statement* > Statement语句的发送器,它的功能就是向数据库发送sql语句!* 2. 调用它的int executeUpdate(String sql),它可以发送DML、DDL*/// 1. 通过Connection得到Statement对象Statement stmt = con.createStatement();// 2. 使用Statement发送sql语句!
//        String sql = "INSERT INTO stu VALUES('ITCAST_0003', 'wangWu', 88, 'male')";
//        String sql = "UPDATE stu SET name='zhaoLiu', age=22, " +
//                "gender='female' WHERE number='ITCAST_0003'";String sql = "DELETE FROM stu";int r = stmt.executeUpdate(sql);System.out.println(r);}/*** 执行查询* @throws ClassNotFoundException * @throws SQLException */@Testpublic void fun2() throws ClassNotFoundException, SQLException {/** 一、得到Connection* 二、得到Statement,发送select语句* 三、对查询返回的“表格”进行解析!*//** 一、得到连接* 1. 准备四大连接参数*/String driverClassName = "com.mysql.jdbc.Driver";String url = "jdbc:mysql://localhost:3306/exam";String username = "root";String password = "123";/** 2. 加载驱动类*/Class.forName(driverClassName);/** 3. 通过省下的三个参数调用DriverManger的getConnection(),得到连接*/Connection con = DriverManager.getConnection(url, username, password);/** 二、得到Statement,执行select语句* 1. 得到Statement对象:Connection的createStatement()方法*/Statement stmt = con.createStatement();/** 2. 调用Statement的ResultSet rs = executeQuery(String querySql)*/ResultSet rs = stmt.executeQuery("select * from emp");/** 三、解析ResultSet* 1. 把行光标移动到第一行,可以调用next()方法完成!*/while(rs.next()) {//把光标向下移动一行,并判断下一行是否存在!int empno = rs.getInt(1);//通过列编号来获取该列的值!String ename = rs.getString("ename");//通过列名称来获取该列的值double sal = rs.getDouble("sal");System.out.println(empno +  ", " + ename + ", " + sal);}/** 四、关闭资源* 倒关*/rs.close();stmt.close();con.close();//这个东东,必须要关,不关就死!
    }// 规范化
    @Testpublic void fun3() throws Exception {Connection con = null;//定义引用Statement stmt = null;ResultSet rs = null;try {/** 一、得到连接*/String driverClassName = "com.mysql.jdbc.Driver";String url = "jdbc:mysql://localhost:3306/exam";String username = "root";String password = "123";Class.forName(driverClassName);con = DriverManager.getConnection(url, username, password);//实例化/** 二、创建Statement*/stmt = con.createStatement();String sql = "select * from emp";rs = stmt.executeQuery(sql);rs.last();//把光标移动到最后一行
System.out.println(rs.getRow());rs.beforeFirst();/** 三、循环遍历rs,打印其中数据* * getString()和getObject()是通用的!*/
//            while(rs.next()) {
//                System.out.println(rs.getObject(1) + ", "
//                        + rs.getString("ename") + ", " + rs.getDouble("sal"));
//            }int count = rs.getMetaData().getColumnCount();while(rs.next()) {//遍历行for(int i = 1; i <= count; i++) {//遍历列
                    System.out.print(rs.getString(i));if(i < count) {System.out.print(", ");}}System.out.println();}} catch(Exception e) {throw new RuntimeException(e);} finally {// 关闭if(rs != null) rs.close();if(stmt != null) stmt.close();if(con != null) con.close();}}
}

转载于:https://www.cnblogs.com/xiaoxiao5ya/p/4892146.html

jdbc链接数据库mysql相关推荐

  1. linux 链接数据库mysql数据库文件_linux 命令行 链接mysql数据库

    MySQL命令行导出数据库 MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\My ...

  2. jdbc链接数据库失败的问题

    我的数据库是8.19 版本,然后驱动类的版本要下载高版本8.19版本的.然后重新buid path后,会出现这个问题This is deprecated. The new driver class i ...

  3. Java 项目JDBC 链接数据库中会出现的错误

    1.出现的地方 1 package com.jdbc; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 impor ...

  4. java和jdbc操作数据库MySQL

    大家初学java连接数据库一定遇到不少问题吧,我遇到这些问题也很头痛,所以我我把我初学jdbc连接数据库写的代码直接分享给大家.最后有完整代码可以直接复制运行 建表语句 CREATE TABLE `c ...

  5. php jdbc链接数据库,JDBC连接数据库大全

    作者: 三十而立 时间:2009年11月07日 17:37:32 inthirties(三十而立)"和出处"http://blog.csdn.net/inthirties/arch ...

  6. JDBC链接数据库的步骤

    jdbc连接数据库的步骤: 1.加载jdbc驱动程序: 2.创建数据库的连接: 3.创建preparedStatement: 4.执行SQL语句: 5.遍历结果集: 6.处理异常,关闭JDBC对象资源 ...

  7. PHP链接数据库mysql

    #mysql php7-- mysqli 实例 limit 分页

  8. jdbc链接mysql的第二个例子。使用properties文件存放连接信息。使用jar文件一个

    该例子将jdbc的链接信息封装到properties文件中.并将jdbc的基本使用框架提取到一个jdbcUtils类中.简化了jdbc操作数据库的操作. JdbcUtil工具类: package co ...

  9. mysql链接数据库properties_mysql 之通过配置文件链接数据库

    mysql 之通过配置文件链接数据库 配置文件jdbc.properties ##MySQL driver=com.mysql.jdbc.Driver url=jdbc\:mysql\:///ake? ...

最新文章

  1. 太赞了!副业月入3W的技术大佬的公众号,学起来!
  2. PDO的bindParam与bindValue的区别
  3. 让表单文本框只读不可编辑的方法
  4. 音视频技术开发周刊 | 174
  5. 新后缀再开放,投资者应谨慎对待!
  6. 【Android开发】Android应用程序目录结构
  7. AcWing135.最大子序和(单调队列DP)
  8. 计算机网络实验5以太网链路帧实验,计算机网络实验-使用Wireshark分析以太网帧与ARP协议.docx...
  9. 快速排序的python实现
  10. c语言单分支编程题,C语言习题集(分支和选择).doc
  11. 微信模拟地理位置_伪装微信地理位置
  12. AJAX请求和普通HTTP请求区别(postman分析)
  13. 服务器云共享文件夹权限设置方法,服务器云共享文件夹权限设置方法
  14. jQuery 的 Sizzle 选择器
  15. springboot一键启动
  16. 安装JESS插件到Eclipse Mars
  17. 【 Tomcat 】
  18. 转载---about Amazon EC2
  19. iOS开发笔记--超全!iOS 面试题汇总
  20. 热水器php2p3代表什么,热水器p1p2p3什么意思

热门文章

  1. hibernate lazy加载
  2. 跟我学XSL(二) -XSL的运算符
  3. mysql数据库安全配置规范_MySQL数据库安全配置规范操作
  4. 【数据平台】pandas将一列中的文本拆分成多行
  5. Java机器学习库ML之十一线性SVM
  6. JDK中提供的实现——通过 java.util.Observable 类和 java.util.Observer 接口定义了观察者模式,只要实现它们的子类就可以编写观察者模式实例
  7. Get Started with Visualforce
  8. 类加载子系统的详解——未完待续
  9. NIO的Buffer
  10. Windows 技术篇-win+R运行搜索gpedit.msc提示“MMC 不能打开文件”解决方法