Chú thích Java Excel

private void initParams(Class pojoClass, ImportParams params) { try { Field files[] = PoiPublicUtil. getClassFields(pojoClass); . getAnnotation(ExcelTarget. lớp); . = null) { targetId = etarget. giá trị(); . lỗi (e. getMessage(), e); . getMessage());
com. ruoyi. phổ thông. chú thíchExcelreadConverterExp

Các phương pháp phổ biến của Excel

  • kết hợp
  • Định dạng ngày tháng
  • giá trị mặc định
  • Chiều cao
  • isExport
  • Tên
  • lời nhắc
  • hậu tố
  • mục tiêuAttr
  • loại
  • chiều rộng
  • loại,
  • chiều rộng

Phổ biến trong Java

  • Thực hiện yêu cầu http sử dụng okhttp
  • requestLocationUpdates (LocationManager)
  • onRequestPermissionsResult (Đoạn)
  • getResourceAsStream (Trình tải lớp)
  • Graphics2D (java. awt)

    Lớp Graphics2D này mở rộng lớp Graphics để cung cấp các overgraphic điều khiển tinh vi hơn

  • Nhân (java. awt. ảnh)
  • BufferedWriter (java. io)

    Kết thúc một Trình ghi hiện có và đệm đầu ra. Tương tác đắt tiền với người đọc cơ bản là

  • Bộ đệm byte (java. không)

    Bộ đệm cho byte. Bộ đệm byte có thể được tạo theo một trong các cách sau. * #chỉ định

  • Tập kết quả (java. sql)

    Một giao diện cho một đối tượng đại diện cho một mục nhập trong bảng cơ sở dữ liệu, được trả về như là kết quả của qu

  • Semaphore (java. sử dụng. đồng thời)

    Một semaphore đếm. Về mặt khái niệm, một semaphore duy trì một bộ giấy phép. Mỗi khối #acquire nếu

  • Các plugin hàng đầu cho Android Studio

public static void createSheetInUserModel2File(HSSFWorkbook workbook, ExcelTitle entity, Class pojoClass, Collection dataSet) { try { Sheet sheet = workbook. createSheet(thực thể. getSheetName()); //创建表格属性 Mapstyles = createStyles(workbook); Drawing patriarch = sheet. createDrawingPatriarch(); ListexcelParams = new ArrayList(); // 得到所有字段 Field fileds[] = ExcelPublicUtil. getClassFields(pojoClass); . getAnnotation(ExcelTarget. lớp); . = null) { targetId = etarget. Tôi(); . getTitle(). = null) { int i = createHeaderRow(thực thể, trang tính, sổ làm việc, feildWidth); . createFreezePane(0, 2+i, 0, 2+i); . createFreezePane(0, 2, 0, 2); . trình vòng lặp(); . hasNext()) { Đối tượng t = của nó. tiếp theo(); . printStackTrace();

Theo mặc định, Poiji chọn trang tính đầu tiên của tệp excel và bỏ qua hàng tiêu đề của dữ liệu excel. Nếu chúng tôi muốn bỏ qua hàng dữ liệu đầu tiên thì hãy làm theo đoạn mã dưới đây

PoijiOptions options = PoijiOptionsBuilder.settings(1).build(); // we eliminate 1st row of data
List students = Poiji.fromExcel(new File("students.xls"), Student.class, options);
students.size();

Tính năng Poiji2

Bằng cách sử dụng chú thích @ExcelSheet, chúng ta có thể chỉ định tên trang tính. chúng tôi đang định cấu hình tên của trang tính để đọc dữ liệu từ đó và các trang tính khác sẽ bị bỏ qua

Tính năng Poiji3

Nếu tệp excel của chúng tôi được bảo vệ bằng mật khẩu, chúng tôi có thể xác định mật khẩu qua PoijiOptionsBuilder để đọc các hàng dữ liệu excel

PoijiOptions options = PoijiOptionsBuilder.settings() .password("password").build();
List students = Poiji.fromExcel(new File("students.xls"), Student.class, options);

Tính năng Poiji4

Sử dụng chú thích @ExcelCellName, chúng ta có thể đọc dữ liệu excel trực tiếp bằng cách sử dụng tên cột

public class Student {

    @ExcelCellName("Student Name")  (1)
    private String name;

    @ExcelCellName("Address")
    private String address;

    @ExcelCellName("Age")
    private int age;

    @ExcelCellName("Email")
    private  String email;

}

Theo mặc định, @ExcelCellName phân biệt chữ hoa chữ thường và tệp excel không được chứa tên cột trùng lặp

Poiji Feature5

Chúng tôi có thể ánh xạ Bản đồ với chú thích @ExcelUnknownCells để phân tích tất cả các mục excel. không được ánh xạ theo bất kỳ cách nào khác, chẳng hạn như theo chỉ mục hoặc theo tên bằng cách sử dụng chú thích @ExcelCell hoặc @ExcelCellName

Dưới đây là mô hình đối tượng của chúng tôi

public class StudentExcelModel {

    @ExcelUnknownCells
    private Map<String, String> unknownCells = new LinkedHashMap();

}

Dưới đây là đoạn mã của chúng tôi

File file = new File("./Student.xlsx");
List excelUnknownColumns =  Poiji.fromExcel(file,StudentExcelModel.class);

excelUnknownColumns.size();

đầu ra

[
Student [rowIndex=1, studentId=1, name=test, surname=test, age=25, [email protected], courses=java],
Student [rowIndex=2, studentId=2, name=test1, surname=test1, age=28, [email protected], courses=Python],
]

chúng ta sẽ nhận được Danh sách các đối tượng HashMap. từ danh sách đó, chúng tôi phải lặp lại từng đối tượng Bản đồ để lấy dữ liệu hàng excel. Bằng cách sử dụng khóa, chúng tôi có thể nhận được giá trị của cột excel cụ thể

Tính năng Poiji6

Poiji hỗ trợ Tùy chọn có tênHeaderMandatory. Nếu được đặt thành true, Poiji sẽ kiểm tra xem tất cả trường được chú thích bằng @ExcelCellName phải có cột tương ứng trong trang tính Excel. Nếu bất kỳ cột nào bị thiếu, HeaderMissingException sẽ bị ném