zoukankan      html  css  js  c++  java
  • 测试大数据类型

    -- 测试大数据类型

    CREATE TABLE test(

         id INT PRIMARY KEY AUTO_INCREMENT,

         content LONGTEXT,

         img LONGBLOB

    );

    Text:

    public class App_text {

    // 全局参数

    private Connection con;

    private Statement stmt;

    private PreparedStatement pstmt;

    private ResultSet rs;

    @Test

    // 1. 保存大文本数据类型   ( longtext)

    public void testSaveText() {

    String sql = "insert into test(content) values(?)";

    try {

    // 连接

    con = JdbcUtil.getConnection();

    // pstmt 对象

    pstmt = con.prepareStatement(sql);

    // 设置参数

    // 先获取文件路径

    String path = App_text.class.getResource("tips.txt").getPath();

    FileReader reader = new FileReader(new File(path));

    pstmt.setCharacterStream(1, reader);

    // 执行sql

    pstmt.executeUpdate();

    // 关闭

    reader.close();

    } catch (Exception e) {

    e.printStackTrace();

    } finally {

    JdbcUtil.closeAll(con, pstmt, null);

    }

    }

    @Test

    // 2. 读取大文本数据类型   ( longtext)

    public void testGetAsText() {

    String sql = "select * from  test;";

    try {

    // 连接

    con = JdbcUtil.getConnection();

    // pstmt 对象

    pstmt = con.prepareStatement(sql);

    // 读取

    rs = pstmt.executeQuery();

    if (rs.next()) {

    // 获取长文本数据, 方式1:

    //Reader r = rs.getCharacterStream("content");

    // 获取长文本数据, 方式2:

    System.out.print(rs.getString("content"));

    }

    } catch (Exception e) {

    e.printStackTrace();

    } finally {

    JdbcUtil.closeAll(con, pstmt, null);

    }

    }

    }

    blob

    public class App_blob {

    // 全局参数

    private Connection con;

    private Statement stmt;

    private PreparedStatement pstmt;

    private ResultSet rs;

    @Test

    // 1. 二进制数据类型   ( longblob)

    public void testSaveText() {

    String sql = "insert into test(img) values(?)";

    try {

    // 连接

    con = JdbcUtil.getConnection();

    // pstmt 对象

    pstmt = con.prepareStatement(sql);

    // 获取图片流

    InputStream in = App_text.class.getResourceAsStream("7.jpg");

    pstmt.setBinaryStream(1, in);

    // 执行保存图片

    pstmt.execute();

    // 关闭

    in.close();

    } catch (Exception e) {

    e.printStackTrace();

    } finally {

    JdbcUtil.closeAll(con, pstmt, null);

    }

    }

    @Test

    // 2. 读取大文本数据类型   ( longblob)

    public void testGetAsText() {

    String sql = "select img from  test where id=2;";

    try {

    // 连接

    con = JdbcUtil.getConnection();

    // pstmt 对象

    pstmt = con.prepareStatement(sql);

    // 读取

    rs = pstmt.executeQuery();

    if (rs.next()) {

    // 获取图片流

    InputStream in = rs.getBinaryStream("img");

    // 图片输出流

    FileOutputStream out = new FileOutputStream(new File("c://1.jpg"));

    int len = -1;

    byte b[] = new byte[1024];

    while ((len = in.read(b)) != -1) {

    out.write(b, 0, len);

    }

    // 关闭

    out.close();

    in.close();

    }

    } catch (Exception e) {

    e.printStackTrace();

    } finally {

    JdbcUtil.closeAll(con, pstmt, null);

    }

    }

    }

  • 相关阅读:
    ASCII、Unicode和UTF-8等常见字符编码格式介绍
    pycharm创建脚本头文件模板
    pycharm常用设置项和快捷键
    Genymotion安装apk问题
    [Android测试] Appium的一些坑问题错误解决 与 技巧集锦
    Appium+python自动化测试过程中问题
    python客户端和Appium服务端联调出现的问题解决办法
    移动端自动化测试环境搭建
    "http://127.0.0.1:4723/wd/hub"的解释
    wireshark抓包看ECN
  • 原文地址:https://www.cnblogs.com/hello-liyb/p/7719756.html
Copyright © 2011-2022 走看看