首页 > 数据库 >java JDBC 读取MySQL数据

java JDBC 读取MySQL数据

时间:2022-09-26 19:56:10浏览次数:65  
标签:JDBC java String mysql System MySQL println out

1、准备

1、 mysql 成功启动

2、准备好jdbc驱动包,根据mysql选择版本,mysql-connector-java-5.1.46.jar   --》String driver = "com.mysql.jdbc.Driver";

    mysql-connector-java-8.xx.jar   --》String driver = "com.mysql.cj.jdbc.Driver";

3、 idea maven不是必备,熟悉了用来连接会很好使

2、代码

import java.sql.*;  //导入相关依赖包
import java.util.ArrayList;
import java.util.Collection;
public class Test77 { public static void main(String[] args) throws ClassNotFoundException, SQLException { 
    String driver = "com.mysql.cj.jdbc.Driver";

   //com.mysql.cj.jdbc.Driver是一个驱动类,是对java.sql.Driver接口的实现 ,实现java和sql的连接
   // 定义连接所需要的三个参数 String url = "jdbc:mysql://localhost/kettle"; //固定格式

    // jdbc:mysql:// -->是指JDBC连接MySQL数据库,规定格式;

    // localhost: 是指你的本机ip地址;可以写localhost,也可以写192.168.xx.xx(具体自己查)

    // 3306 :SQL数据库的端口

    // kettle: 连接的本机的数据库名称

        String user = "root";   // mysql 登录用户名
       String pwd = "123456";   // mydql登录密码
    // 注册驱动,启动上述驱动器 Class.forName(driver);
   
 //获取连接,
        Connection conn=DriverManager.getConnection(url,user,pwd);  //(连接需要的三个参数)
        System.out.println(conn);  //检查是否连接成功,输出地址
    // com.mysql.cj.jdbc.ConnectionImpl@4f9a3314 输出结果 } }

 

// 确定查询语句
        String sql = "select * from stu1";
        //prepareStatement一个接口函数,可以使sql语句作为一个参数,传入函数
        PreparedStatement ps =conn.prepareStatement(sql);
        // 执行sql语句,得到的结果集,保存在rs中(集合)
        ResultSet rs =ps.executeQuery();
System.out.println("----------------");
        System.out.println(rsmd.getColumnCount());
//        获取查询结果集中列数
        System.out.println("----------------");
        System.out.println(rsmd.getColumnName(1));
//        获取第一列字段名称
        System.out.println("----------------");
//        获取元数据信息
        System.out.println(rsmd.toString());
//        获取数据库名称
        System.out.println(rsmd.getCatalogName(2));

 

 

//        读取具体表信息
        Collection<Object> list1 = new ArrayList<>(0);
        // 创建list1列表,存放结果集
        // rs.next()叫什么来着,--
//忘了反正就是指针一个一个遍历rs结果集,如果有就返回true while (rs.next()){ // 创建list0对象列表存放每一条记录 Collection<Object> list0 = new ArrayList<>(0); // 获取当前next下的id字段 int id = rs.getInt("id"); // 获取当前next下的name字段 String name = rs.getString("name"); // 获取当前next下的age字段 int age = rs.getInt("age"); list0.add(id); list0.add(name); list0.add(age); // System.out.println(list0); list1.add(list0); } System.out.println("---------"); System.out.println(list1);

 

 

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;


 System.out.println("我是分隔符");
//        把输出结果转化为json格式
        JSONArray array= JSONArray.parseArray(JSON.toJSONString(list1));
        System.out.println(array);

 

 

 

 

 

 

 

 

 

 

 

 

标签:JDBC,java,String,mysql,System,MySQL,println,out
From: https://www.cnblogs.com/Monster1728/p/16732157.html

相关文章

  • 手把手教你连接腾讯云linux的mysql数据库
    我的腾讯云linux服务器操作系统是CentOS7.6,mySql数据库是5.7。做为学习服务器在上面安装了mysql数据库用于自己的学习和产品展示。目录:1.安装环境检查2.安装mysql5.73......
  • JavaScript手写函数
     //url的queryString转成对象functionqueryStr2Obj(url){constquery={};constsearch=url.split('?')[1];if(!search){return{}......
  • mysql统计每张表的数据量
    1.每张表大概的数据量的查询方法selecttable_name,table_rowsfrominformation_schema.tableswhereTABLE_SCHEMA='数据库名称'orderbytable_rowsdesc;2.具体某张......
  • 【Java基础】内部类
    1.内部类在一个类的内部再定义一个类,内部类和外部类名字不能相同。可以分为成员内部类:静态、非静态局部内部类:方法内、代码块内、构造器内,匿名内部类2.成员内部类(1......
  • 五 Java面向对象
    面向对象初识面向对象面向过程&面向对象面向过程思想:步骤清晰简单,第一步做什么,第二步做什么…面对过程适合处理一些较为简单的问题面向对象思想:物以类聚,分......
  • SpringBoot+Vue医患档案管理系统 医院档案管理系统 医院病历管理系统Java Vue MySQL数
    ......
  • Java流程控制05(switch多选择结构)
    多选择结构还有一个实现方式就是switchcase语句switchcase语句判断一个变量与一系列值中的某个值是否相等,每个值称为一个分支语法:switch(表达式){casevalue......
  • Java流程控制01(Scanner)
    用户交互Scanner:之前学习的基本语法中,我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入"Java.util.Scanner"是Java5的新特征,我......
  • MySQL 数据库-ORM 映射规约
    MySQL数据库-ORM映射规约字段POJO类的布尔属性不能加is,而数据库字段必须加is_【强制】POJO类的布尔属性不能加is,而数据库字段必须加is_,要求在resultMap中进行......
  • MySQL 数据库-SQL 语句规约
    MySQL数据库-SQL语句规约统计标准统计行数的语法count(*)【强制】不要使用count(列名)或count(常量)来替代count(*),count(*)是SQL92定义的标准统计行数的语法,跟......