使用Java将文件快速导入数据库 (java 文件导入数据库)

在日常开发中,文件和数据库都是不可或缺的一部分。我们通常需要将文件中存储的数据导入数据库中,这为我们的业务处理提供了便利。而要将文件快速导入数据库,使用Java语言的技术,可以让这一工作变得十分简单。

一、利用Java读取文件

使用Java中的IO操作,我们可以读取存储在文件中的数据并进行处理。常用的读取文件的类是FileReader和BufferedReader。FileReader类可以读取文件,同时BufferedReader 可以提供缓冲功能。我们可以使用BufferedReader读取文本文件中的数据,并将其存储在Java中的ArrayList中。

下面是一个示例,在读取文件之前,需要先创建一个数据库连接对象:

“`

import java.io.BufferedReader;

import java.io.FileReader;

import java.util.ArrayList;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class FileToDatabase {

public static void mn (String[] args){

//创建ArrayList,并存储从文件中读取的数据

ArrayList dataList = new ArrayList();

try {

//创建文件读取器

BufferedReader reader = new BufferedReader(new FileReader(“data.txt”));

//读取每一行数据,并存储在ArrayList中

String line = reader.readLine();

while (line != null) {

dataList.add(line);

line = reader.readLine();

}

//关闭文件读取器

reader.close();

} catch (Exception e) {

e.printStackTrace();

}

//打印输出从文件中读取的数据

System.out.println(dataList);

//创建数据库连接

Connection connection = null;

try {

connection = DriverManager.getConnection(“jdbc:mysql://localhost:3306/test?useSSL=false”,”root”,”password”);

} catch (SQLException e) {

e.printStackTrace();

}

}

}

“`

二、将Java中的数据导入到数据库中

当我们从文件中读取了数据并存储在Java的中后,就可以将这些数据快速导入到数据库中。要实现数据快速导入,可以使用Java中的PreparedStatement。

PreparedStatement与Statement十分相似,但是它可以接受参数并进行预处理。使用PreparedStatement可以快速批量插入数据,这对于需要处理大量数据的系统来说是非常有效的。

下面是一个示例,在该示例中,我们将文件中存储的数据插入到数据库表中:

“`

import java.io.BufferedReader;

import java.io.FileReader;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.SQLException;

import java.util.ArrayList;

public class FileToDatabase {

public static void mn (String[] args){

//创建ArrayList,并存储从文件中读取的数据

ArrayList dataList = new ArrayList();

try {

//创建文件读取器

BufferedReader reader = new BufferedReader(new FileReader(“data.txt”));

//读取每一行数据,并存储在ArrayList中

String line = reader.readLine();

while (line != null) {

dataList.add(line);

line = reader.readLine();

}

//关闭文件读取器

reader.close();

} catch (Exception e) {

e.printStackTrace();

}

//打印输出从文件中读取的数据

System.out.println(dataList);

//创建数据库连接

Connection connection = null;

try {

connection = DriverManager.getConnection(“jdbc:mysql://localhost:3306/test?useSSL=false”,”root”,”password”);

} catch (SQLException e) {

e.printStackTrace();

}

//创建PreparedStatement对象

PreparedStatement ps = null;

try {

connection.setAutoCommit(false);

//准备插入数据库的SQL语句,?表示参数

String sql = “INSERT INTO student (name, age, sex) VALUES (?, ?, ?)”;

ps = connection.prepareStatement(sql);

for (String data : dataList) {

String[] split = data.split(“\\,”);

//设置SQL语句中的参数的值

ps.setString(1, split[0]);

ps.setInt(2, Integer.parseInt(split[1]));

ps.setString(3, split[2]);

//将数据添加到批处理中

ps.addBatch();

}

//执行批量操作

ps.executeBatch();

connection.commit();

} catch (SQLException e) {

e.printStackTrace();

} finally {

//关闭PreparedStatement连接

try {

if (ps != null) {

ps.close();

}

} catch (SQLException e) {

e.printStackTrace();

}

//关闭数据库连接

try {

if (connection != null) {

connection.close();

}

} catch (SQLException e) {

e.printStackTrace();

}

}

}

}

“`

三、

相关问题拓展阅读:

怎样用Java实现从文本文档中读取数据并存入数据库

不知道你要什么样的文本,文本中的内容是否是有格式的:

这里提供下思路,供参考:

1.文本文件,基本上式字符格式的了,可以用Reader  io流

2.如果是格式化的文本,可以按数据的长度读取,  readInt   readByte…

3.保存到数据库 当然用JDBC了,如果你读取出来封装成POJO了,也可以选择 OM框架

import java.io.BufferedReader;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStreamReader;

/**

 * 文件读取和写入数据库

 * @author  樊云升

 *

 */

public class FilesReader {

public FilesReader(){

}

/**

 * 读取文件内容

 * @param FILE

 * @return

 */

public String re_content(String FILE){

String content=””;

 try{   

BufferedReader bufRead=new BufferedReader(new InputStreamReader(new FileInputStream(FILE)));  携掘 

      斗衫String  str;   

while((str=bufRead.readLine())!=null){   

content+=str+”\r\n”;   

}

 }catch(IOException ioe){

  ioe.printStackTrace();

 }

return  content;

}

/**

 * 将特定字符写入数据库中(原来我写的是重写文件,你这里这里将content写入数据库就OK)

 * @param path

 * @return

 */

public boolean writeFile(String content){

try{

//数据库写入代码

 辩销核      }catch(Exception e){

 out.close();

 return false;

 }

return true;

}

public static void main(String args) {

String content=new FilesReader().re_content(“D:\\AJAX.htm”);

  new FilesReader().writeFile(content);

}

}

关于java 文件导入数据库的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » 使用Java将文件快速导入数据库 (java 文件导入数据库)