Java数据库导入:简单易懂的教程分享 (怎从java中导入数据库)

随着互联网技术和数据的快速发展,数据库已经成为了存储和管理数据的必选工具。而Java作为一门高效、强大的编程语言,也是广泛应用于企业级应用系统中的重要技术。

在Java开发中,数据库操作是必不可少的,而数据的导入又是数据库操作中非常常见的一个功能。本文将分享Java数据库导入的简单易懂的教程,帮助Java开发者更好地实现数据的导入功能。

1.选择合适的数据库

在进行Java数据库导入前,我们需要选择一个合适的数据库。MySQL是比较常用的开源数据库,SQLite是一个轻量级的关系型数据库,PostgreSQL是高级对象关系型数据库。这些数据库都可以用于Java数据库开发,但因为我的开发环境中有MySQL,所以这里以MySQL为例。

2.编写Java代码

在进行数据导入时,我们需要编写一段代码来实现数据导入的功能。代码的编写涉及到Java语言的输入输出、数据库连接、SQL语句的执行等知识点。下面是一份Java数据库导入的基本代码示例:

“`

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.SQLException;

public class ImportDataDemo {

public static void mn(String[] args) {

String url = “jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false”;

String user = “root”;

String password = “123456”;

String sql = “insert into user(name, age, sex) values(?, ?, ?)”;

String filePath = “d:\\data.xlsx”;

try {

Class.forName(“com.mysql.jdbc.Driver”);

Connection conn = DriverManager.getConnection(url, user, password);

PreparedStatement ps = conn.prepareStatement(sql);

ps.setString(1, “张三”);

ps.setInt(2, 20);

ps.setString(3, “男”);

ps.execute();

ps.close();

conn.close();

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

“`

上面的代码演示了如何向MySQL数据库中的一张user表中插入一条数据(包括姓名、年龄、性别)。其中,url是数据库的连接地址,user和password是数据库的用户名和密码,filePath是数据文件的路径。我们可以按照具体的需求进行修改。

3.导入Excel文件

数据导入的方式有多种,最常见的是导入Excel文件。如果要导入Excel文件,我们可以使用Apache POI这个开源库来读取Excel文件中的数据,具体实现可以参考以下代码:

“`

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.SQLException;

import java.util.Date;

import java.util.Iterator;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import org.apache.poi.ss.usermodel.Cell;

import org.apache.poi.ss.usermodel.DateUtil;

import org.apache.poi.ss.usermodel.Row;

import org.apache.poi.ss.usermodel.Sheet;

import org.apache.poi.ss.usermodel.Workbook;

public class ImportExcelDemo {

public static void mn(String[] args) {

String url = “jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false”;

String user = “root”;

String password = “123456”;

String sql = “insert into user(name, age, sex) values(?, ?, ?)”;

String filePath = “d:\\data.xls”;

try {

Class.forName(“com.mysql.jdbc.Driver”);

Connection conn = DriverManager.getConnection(url, user, password);

Workbook workbook = new HSSFWorkbook(new FileInputStream(filePath)); //读取Excel文件

Sheet sheet = workbook.getSheetAt(0); //获取之一个工作表

Iterator rowIterator = sheet.rowIterator(); //获取行迭代器

while (rowIterator.hasNext()) { //迭代每一行

Row row = rowIterator.next();

Iterator cellIterator = row.cellIterator(); //获取单元格迭代器

String name = “”;

int age = 0;

String sex = “”;

while (cellIterator.hasNext()) { //迭代每一个单元格

Cell cell = cellIterator.next();

int columnIndex = cell.getColumnIndex();

switch (columnIndex) { //根据单元格所在的列进行不同的操作

case 0:

name = cell.getStringCellValue();

break;

case 1:

if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC && DateUtil.isCellDateFormatted(cell)) {

Date date = cell.getDateCellValue();

age = date.getYear() – 1900;

} else {

age = (int) cell.getNumericCellValue();

}

break;

case 2:

sex = cell.getStringCellValue();

break;

}

}

PreparedStatement ps = conn.prepareStatement(sql);

ps.setString(1, name);

ps.setInt(2, age);

ps.setString(3, sex);

ps.execute();

ps.close();

}

workbook.close(); //关闭工作簿

conn.close();

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

“`

上面的代码演示了如何从Excel文件中读取数据,并将数据插入到MySQL数据库的user表中。其中,我们使用了Apache POI这个开源库来读取Excel文件,可以根据需要选择读取.xls或者是.xlsx格式的Excel文件。

4.结语


数据运维技术 » Java数据库导入:简单易懂的教程分享 (怎从java中导入数据库)