Java Export Database to Text file |
Java Import Text file to Database บทความนี้เป็นการเขียน Java เพื่อทำการ Export ข้อมูลจาก Database ออกเป็นข้อมูลที่อยู่ในรูปแบบของ Text file โดยจะใช้หลักการก็คือ Query ข้อมูลจาก Database แล้วใช้การ Loop เพื่อเขียนข้อมูลแต่ล่ะ Rows ลงใน Text ซึ่งตัว Database นี้จะใช้อะไรก็ได้ แต่ในบทความนี้จะเลือกใช้ MySQL เพราะสามารถใช้งานได้ง่ายที่สุด
Java and MySql Database บทความเกี่ยวกับการเขียน Java กับ MySQL
MySQL Table (โครงสร้างของ Table)
CREATE TABLE `customer` (
`CustomerID` varchar(4) NOT NULL,
`Name` varchar(50) NOT NULL,
`Email` varchar(50) NOT NULL,
`CountryCode` varchar(2) NOT NULL,
`Budget` double NOT NULL,
`Used` double NOT NULL,
PRIMARY KEY (`CustomerID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- dump ตาราง `customer`
--
INSERT INTO `customer` VALUES ('C001', 'Win Weerachai', '[email protected]', 'TH', 1000000, 600000);
INSERT INTO `customer` VALUES ('C002', 'John Smith', '[email protected]', 'UK', 2000000, 800000);
INSERT INTO `customer` VALUES ('C003', 'Jame Born', '[email protected]', 'US', 3000000, 600000);
INSERT INTO `customer` VALUES ('C004', 'Chalee Angel', '[email protected]', 'US', 4000000, 100000);
เป็นโครงสร้างของ Table และ Data ที่อยู่ใน MySQL Database
Example ตัวอย่างการเขียน Java เพื่อทำการ Exportข้อมูลจาก Database ไปยัง Text file (.txt)
MyClass.java
package com.java.myapp;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Connection;
import java.sql.DriverManager;
public class MyClass {
public static void main(String[] args) {
Connection connect = null;
Statement s = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connect = DriverManager.getConnection("jdbc:mysql://localhost/mydatabase" +
"?user=root&password=root");
s = connect.createStatement();
String sql = "SELECT * FROM customer ORDER BY CustomerID ASC";
ResultSet rec = s.executeQuery(sql);
String path = "C:\\java\\thaicreate.txt";
FileWriter writer;
try {
File file = new File(path);
writer = new FileWriter(file, true); //True = Append to file, false = Overwrite
while((rec!=null) && (rec.next()))
{
writer.write(rec.getString("CustomerID"));
writer.write(",");
writer.write(rec.getString("Name"));
writer.write(",");
writer.write(rec.getString("Email"));
writer.write(",");
writer.write(rec.getString("CountryCode"));
writer.write(",");
writer.write(rec.getString("Budget"));
writer.write(",");
writer.write(rec.getString("Used"));
writer.write("\r\n");
}
writer.close();
System.out.println("Write success!");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// Close
try {
if(connect != null){
s.close();
connect.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Output
Write success!
ไฟล์ถูกสร้าง
รายละเอียดของ Text file ที่ได้จากการ Export จาก Database
|