កាលពីលើកមុន យើងបានចុះផ្សាយរួចទៅហើយនូវ
ការសរសេរកូដ javaដើម្បីទាញទិន្នន័យចេញពី excel file
។ ហើយក្នុងអត្ថបទយើង សូមលើកយកចំនុចបន្ត ដែលជាការសរសេរកូដដើម្បីរក្សាទុកទិន្នន័យចូលក្នុងexcel file។ ជាទូទៅ គេអាចប្រើប្រាស់សំរាប់ការទាញយកទិន្នន័យពីdatabase ឬ ពី JSON data បន្ទាប់មកបង្កើតជា excel file សំរាប់ឲ្យគេdownload យកក្នុងទំរង់ជា report ជាដើម។ នៅក្នុងគំរូកូដរបស់យើង ប្រភពទិន្នន័យរបស់យើង គឹយើងសរសេរនៅក្នុងកូដផ្ទាល់ (មិនបានទាញយកពី databaseទេ) ។
រៀនសរសេរកូដJava ដើម្បីភ្ជាប់ទៅកាន់ (connect) MYSQL Database
នៅក្នុងនេះ យើងបានបង្កើតជា model ដើម្បីងាយស្រួលក្នុងការបង្កើតជាទិន្នន័យដាក់ក្នុង ArrayList ដែលកូដខាងក្រោមនេះ ជា StudentModel class
public class StudentModel {
private String id;
private String firstName;
private String lastName;
private String gender;
private String address;
private boolean active;
public StudentModel(){
}
public StudentModel(String id, String firstName, String lastName,
String gender, String address, boolean active) {
this.id = id;
this.firstName = firstName;
this.lastName = lastName;
this.gender = gender;
this.address = address;
this.active = active;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public boolean isActive() {
return active;
}
public void setActive(boolean active) {
this.active = active;
}
}
កូដសំរាប់បង្កើតជាទិន្នន័យ (សរសេរនៅក្នុងកូដផ្ទាល់)
List<StudentModel> students = new ArrayList<StudentModel>();
StudentModel stu1 = new StudentModel("B034","Dev","Smith","M","NYC",true);
StudentModel stu2 = new StudentModel("B258","Jerry","Char","F","NYC",true);
StudentModel stu3 = new StudentModel("B002","Mark","Soy","M","WDC",false);
students.add(stu1);
students.add(stu2);
students.add(stu3);
write("students.xls", students);
កូដសំរាប់write data ទៅជា excel file
private static void write(String filePath, List<StudentModel> students) throws Exception{
if(filePath==null || filePath==""){
throw new Exception("Please set file path...");
}
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet("Student List");
// generate header
Row row = sheet.createRow(0);
row.createCell(0).setCellValue("ID");
row.createCell(1).setCellValue("First Name");
row.createCell(2).setCellValue("Last Name");
row.createCell(3).setCellValue("Gender");
row.createCell(4).setCellValue("Address");
row.createCell(5).setCellValue("Active");
//fill data
int startRow= 1;
for (StudentModel studentModel : students) {
Row r = sheet.createRow(startRow);
startRow+=1;
r.createCell(0).setCellValue(studentModel.getId());
r.createCell(1).setCellValue(studentModel.getFirstName());
r.createCell(2).setCellValue(studentModel.getLastName());
r.createCell(3).setCellValue(studentModel.getGender());
r.createCell(4).setCellValue(studentModel.getAddress());
r.createCell(5).setCellValue(studentModel.isActive());
}
// save file
File sourceFile = new File(filePath);
FileOutputStream out = new FileOutputStream(sourceFile);
workbook.write(out);
workbook.close();
out.flush();
out.close();
System.out.println("Data saved to [ " + sourceFile.getAbsolutePath()+ " ]");
}
នៅពេលដែលអ្នកបាន run ចប់វានឹងបង្ហាញជា Data save to [ ទីតាំងឯកសារ ] ហើយអ្នកអាចរក excelfileនោះបានតាមទីតាំងដែលអ្នកបានកំណត់។