1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/milin-excel-bean

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 6.2 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 02.12.2024 05:06 7b251c9

Введение

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 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/milin-excel-bean.git
git@api.gitlife.ru:oschina-mirror/milin-excel-bean.git
oschina-mirror
milin-excel-bean
milin-excel-bean
master