java从mysql读取大文本字段的方法

| 的基本命令

[ ]中的内容为可选项

–创建数据库

> create database 数据库名称

–创建表

> create table 表名 (

  列的名字(id)类型(int(4))primary key(定义主键) auto_increment(描述 自增),

  ……,

  );

–查看所有数据库

> show databases ;

–使用某个数据库

> use 数据库名称;

–查看所使用数据库下所有的表

mysql> show tables;

–显示表的属性结构

mysql> desc 表名;

–选择表中数据的显示

–* 代表选择所有列 ,

…………………………….后面有大量文本和空白!

*/

———-从数据库中读取一个大文本:用以前IO流的方式:

package com.mldn;

import .sql.DriverManager;

import .sql.Connection;

import .sql.PreparedStatement;

import .sql.ResultSet;

import java.io.File;

import java.io.InputStream;

import java.io.FileInputStream;

import java.util.Scanner;

public class ClobDemo1

{

/**

读取大文本

*/

// 连接驱动路径

public static final String DRIVER = “com.mysql.jdbc.Driver”; // “org.gjt.mm.mysql.driver”

// 定义数据源URL:数据库地址

public static final String DBURL = “jdbc:mysql://localhost:3306/BigOb?characterEncoding=utf8”;

// 定义数据库登录的用户名:

public static final String USERNAME = “root”;

// 定义数据库登录的密码:

public static final String PASSWORD = “123456”;

public static void main(String[] args) throws Exception // 抛出所有

{

Connection conn = null; // 数据库连接

PreparedStatement pstmt = null; // 预处理语句

ResultSet rs = null; // 输出结果

InputStream in = null; // 数据读入

// 加载数据库驱动

Class.forName(DRIVER);

// 获取数据库连接

conn = DriverManager.getConnection(DBURL, USERNAME, PASSWORD);

int id = 1; // 指定查询

// 预查询语句

String sql = “SELECT id, name, text FROM clob where id = ?”;

// 预处理操作对象

pstmt = conn.prepareStatement(sql);

pstmt.setInt(1, id);

// 执行查询

rs = pstmt.executeQuery();

StringBuffer buff = new StringBuffer(); // 接收文本

Scanner scan = null; // 接收文本

// 只进行一次操作

if (rs.next()) // rs每次调用标记一行,存在返回true,基于ResultSet的所有操作都必须先定位:标记行后再展开读取操作!

{

// 获取text字段的输入流

in = rs.getAsciiStream(“text”);

// 接收输入

scan = new Scanner(in);

scan.useDelimiter(“\r\n”); // 文件换行符\r\n作为分隔符

System.out.println(“文本名称:” + rs.getString(“name”)); // 获取文本名称

while (scan.hasNextLine())

{

buff.append(scan.nextLine()).append(“\n”);

}

in.close(); // 关闭输入流,

}

System.out.print(buff); // 在屏幕上打印大文本信息

// 关闭操作与连接

scan.close();

rs.close();

pstmt.close();

conn.close();

}

}

/*

ubuntu@xu-desktop:~$ javac -d . work/ClobDemo1.java

ubuntu@xu-desktop:~$ java com.mldn.ClobDemo1

文本名称:mysql常用命令

MySQL的基本命令

[ ]中的内容为可选项

–创建数据库

mysql> create database 数据库名称

–创建表

mysql> create table 表名 (

……

// ResultSet提供了基于Clob、Blob的获取操作,可以直接返回一个Clob、Blob类型,然后使用Clob、Blob类型的操作可以方便地输出!

*/

声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 智乐兔
转载请注明:转自《java从mysql读取大文本字段的方法
本文地址:https://www.zhiletu.com/archives-156.html
关注公众号:智乐兔

赞赏

wechat pay微信赞赏alipay pay支付宝赞赏

上一篇
下一篇

相关文章

在线留言

你必须 登录后 才能留言!

在线客服
在线客服 X

售前: 点击这里给我发消息
售后: 点击这里给我发消息

智乐兔官微