Введение
Excel-Bean — это инструмент, который позволяет преобразовывать данные между JavaBeans и данными в Excel. В обычных проектах часто требуется импортировать и экспортировать данные из Excel, и использование этого инструмента может значительно повысить эффективность работы, избавляя разработчиков от необходимости разбираться в сложном анализе Excel.
Использование с Maven
<dependency>
<groupId>com.aimilin</groupId>
<artifactId>excel-bean</artifactId>
<version>{последняя версия}</version>
</dependency>
Инструкция по использованию
Рассмотрим таблицу Excel:
Имя | Возраст | Дата рождения | Оценка по китайскому языку | Оценка по математике | Общий балл | Пол |
---|---|---|---|---|---|---|
Чжан Сань | 18 | 2016-05-20 10:20:39 | 100 | 99 | 199 | Мужской |
Ли Сы | 17 | 2016-03-20 19:23:16 | 20.09 | 87.7 | 107.79 | Женский |
Ван У | 20 | 2016-01-12 18:33:28 | 33.5 | 33.3 | 66.8 | Мужской |
Тест 1 | 30 | 2016-01-12 18:33:28 | 60 | 95 | 155 | Женский |
Тест 2 | 31 | 2016-01-13 18:33:28 | 61.1 | 80 | 141.1 | Мужской |
Определение типа JavaBean
public class Student1 {
// Если заголовки Excel и имена атрибутов совпадают, можно не использовать аннотации
private String 姓名;
@ExlColumn("Возраст")
// Соответствует столбцу возраста в Excel, остальные аналогичны
private Integer age;
@ExlColumn("Дата рождения")
// Тип даты по умолчанию - yyyy-MM-dd HH:mm:ss
private Date birthday;
@ExlColumn("Оценка по китайскому языку")
private Double chineseScore;
@ExlColumn("Оценка по математике")
private Double mathsScore;
@ExlColumn("Общий балл") // Соответствует формуле в Excel: общий балл = оценка по китайскому + оценка по математике
private Double sumScore;
@ExlTransient // Если используется эта аннотация, атрибут не будет записан в Excel
private String className;// Класс
// Опускаем методы getter и setter
@Override
public String toString() {
return "Student1 [姓名=" + 姓名 + ", age=" + age + ", birthday=" + birthday + ", chineseScore=" + chineseScore
+ ", mathsScore=" + mathsScore + ", sumScore=" + sumScore + "]";
}
}
Вызов метода ExcelUtils для преобразования Excel в список объектов JavaBean
@Test
public void testRead() {
List<Student1> stu1List = ExcelUtils.read(excel2003, Student1.class);
log.debug("Список информации о студентах: " + stu1List);
}
Вывод:
Список информации о студентах: [Student1 [на имя=Чжан Сань, возраст=18, дата рождения=пятница, 20 мая 2016 г., 10:20:39 CST, оценка по китайскому=100.0, оценка по математике=99.0, общий балл=199.0], Student1 [имя=Ли Сы, возраст=17, дата рождения=воскресенье, 20 марта 2016 г., 19:23:16 CST, оценка по китайскому=20.09, оценка по математике=87.7, общий балл=107.79],
Student1 [имя=Ван У, возраст=20, дата рождения=вторник, 12 января 2016 г., 18:33:28 CST, оценка по китайскому=33.5, оценка по математике=33.3, общий балл=66.8],
Student1 [имя=Тест 1, возраст=30, дата рождения=вторник, 12 января 2016 г., 18:33:28 CST, оценка по китайскому=60.0, оценка по математике=95.0, общий балл=155.0],
Student1 [имя=Тест 2, возраст=31, дата рождения=среда, 13 января 2016 г., 18:33:28 CST, оценка по китайскому=61.1, оценка по математике=80.0, общий балл=141.1]]
Иногда при экспорте данных Excel соответствующие состояния преобразуются в читаемые текстовые значения. Например, в базе данных пол хранится как 1 и 2, а при экспорте в Excel необходимо отображать «Мужской» и «Женский». В этом случае можно использовать аннотацию @ExlColumn с параметром dictionaries для автоматического преобразования типов. Добавьте следующий код в объект Student:
// Использование словаря для пола, автоматическое преобразование
@ExlColumn(value = "Пол",
dictionaries = {@Dictionary(name = "1", value = "Мужской"),
@Dictionary(name = "2", value = "Женский"),
@Dictionary(name = "0", value = "Неизвестно") })
private Integer gender;
Способы использования
Основные типы данных включают byte[], InputStream, String filePath и другие, которые можно легко преобразовать в List, Map или Bean и обратно в файл Excel.
Контакты и общение
Блог: http://my.oschina.net/java2010/blog Электронная почта: aimilin@yeah.net
Лицензия Пожалуйста, следуйте протоколу открытого исходного кода MIT.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )