java JDBC 读取MySQL数据

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);

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2022-09-26 19:49  Monster1728  阅读(826)  评论(0编辑  收藏  举报