`

Java中注解学习系列教程-4 使用自定义注解实现excel导出

 
阅读更多

本文是《Java中注解学习系列教程》第四篇文章也是小案例文章。

自定义注解小案例是:使用自定义注解实现excel导出。

Excel导出分析:

4cb85001b8caf007a3dfcf82709a5a99.png

有表头、数据值。一般第一行是表头,从第二行开始就是数据了。而且我们可以发现,每个表头都会对于一列。

如上图中的。主键ID对应的是A列 、姓名对应的是B列、生日对应的是C列、性别对应的是D列。

我们来分析自定义主键需要定义哪些?

1:主键范围

2:列对应的中文

3:所在那一列

经过分析我们知道,Excel中每一列对应的其实就是对象中的属性。所有我们知道了:

1:自定义注解Target的范围是Filed即@Target({ElementType.FIELD})

2:自定义注解的成员变量有一个是中文名称这个字段。我们取名为:String ZHName() ;

3:还需要有个成员变量就是指定当前这个属性或者是中文(表头)位于哪一列。我们取名为:    String colum();

经过上面分析,我们可以得到这个自定义注解具体了。

@Target({ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
public @interface ExcelAnnotation {

    /**
     * 导出文件的中文名称
     */
    String ZHName() ;

    /**
     * 导出对应的列
     * A、B、C...
     * @return
     */
    String colum();
    }

 

466e69f91ca7b44e0c63630f385af95f.png

接下来我们创建对象。开始测试:

一:创建POJO对象

创建用户对象:AnnotationUserPoJo

属性有:

/**
*注解id
**/
private Integer id;
/**
*用户名
**/
private String name;
/**
*性别
**/
private Integer Gender;

在需要的字段上使用我们自定义的ExcelAnnotation注解。

具体用法:

/**
 * 主键id
 */
@ExcelAnnotation(ZHName = "主键ID", colum ="A" )
private Integer id;

532f148ba973ae5bc3d8b00fc0bd95ca.png

编写Excel工具类:

在这里凯哥就不贴出全码了,因为工具类中代码太多。只讲重要的。代码会放在git上的。

1245825209f64241a27f895d2f306da7.png

我们在解析的时候,先判断每个自读是否使用了注解。如使用了注解就进行解析。

三:创建junit测试类:

4b49e5558277da603a2f97f4b2278c70.png

执行test测试。查看结果。

问题分析:

1:如果是date类型的数据,怎么格式化?在文章刚开始凯哥贴出的图中,生日是格式化好的

2:枚举类型。如性别。在文章刚开始凯哥贴出的图中,性别还是数字1.而非男或者女。

以上两个问题怎么解决呢?

凯哥将在下一篇文章中详细讲解。以及工作中常用到的怎么处理。

声明:本文由凯哥Java系列教程中Java注解讲解第四篇文章。

本文出处:http://www.kaigejava.com/article/detail/442

凯哥博客:www.kaigejava.com

凯哥公众号:凯哥Java(kaigejava)

 

分享到:
评论

相关推荐

    Java开发案例-springboot-23-自定义注解实现post请求接收单个参数值-源代码+文档.rar

    Java开发案例-springboot-23-自定义注解实现post请求接收单个参数值-源代码+文档.rar Java开发案例-springboot-23-自定义注解实现post请求接收单个参数值-源代码+文档.rar Java开发案例-springboot-23-自定义注解...

    导出excel注解方式

    本教程将探讨如何利用注解方式实现简单的Excel表格导出功能。这种方法通常结合Java库,如Apache POI,来简化操作流程。 首先,我们需要引入Apache POI库,它是一个用于读写Microsoft Office格式档案的Java API。在...

    java自定义注解实践

    在本文中,我们将详细介绍 Java 自定义注解的概念、特点、实现方式及实践应用。 概念 ---- Java 自定义注解是 Java 语言中的一项新特性,始于 JDK 5。它可以使开发者自定义注解,以满足不同的需求。注解可以看作是...

    java 自定义注解验证

    Java 自定义注解验证是Java开发中的一个重要特性,它允许开发者创建自己的元数据,以便在编译时或运行时对代码进行验证和处理。自定义注解为代码提供了额外的信息,使得程序更具可读性、可维护性和灵活性。在本案例...

    注解反射导出Excel自定义中文表头

    本文将深入探讨如何使用注解反射技术来实现Excel自定义中文表头的导出,结合数据库查询的数据,以实现更加灵活和人性化的数据展示。 首先,让我们了解什么是注解(Annotation)。注解是Java提供的一种元数据,它...

    java-excel导入导出注解版内用教程说明

    Java中的Excel导入导出是开发过程中常见的需求,特别是在数据处理、...以上就是Java中使用Apache POI和注解进行Excel导入导出的基本教程。通过实践和扩展,你可以创建一个强大的Excel工具包,满足各种复杂的业务需求。

    excel导入动态校验,自定义注解动态校验

    在IT行业中,数据处理是一项至关重要的任务,而Excel作为广泛使用的电子表格工具,常常用于数据导入和导出。本文将详细探讨"Excel导入动态校验,自定义注解动态校验"这一主题,旨在帮助你理解和掌握如何在处理Excel...

    Excel导入导出,Java注解的方式实现

    本篇文章将深入探讨如何使用Java注解的方式实现Excel的导入导出功能。 首先,我们要理解Java注解(Annotation)的作用。注解是Java语言提供的一种元数据,它允许我们在代码中嵌入额外的信息,这些信息可以被编译器...

    Java自定义注解使用反射获取字段注解

    在Java中,注解(Annotation)主要用于编译器检查、代码生成、运行时处理等方面。本文将深入探讨如何通过反射机制来获取自定义注解以及其在字段上的应用。 首先,我们需要了解什么是自定义注解。自定义注解是以`@`...

    java自定义注解接口限流demo

    java自定义注解接口限流demo; java自定义注解接口限流demo; java自定义注解接口限流demo; java自定义注解接口限流demo; java自定义注解接口限流demo; java自定义注解接口限流demo; java自定义注解接口限流demo...

    自定义注解实现伪动态传参的小demo

    在Java编程语言中,注解(Annotations)是一种元数据,用于提供有关代码的信息,这些信息可以被编译器或运行时环境使用。自定义注解是扩展Java功能的强大工具,可以用于实现各种目的,如代码生成、编译时检查、运行...

    Java自定义注解实例

    Java自定义注解是Java编程语言中的一个重要特性,它允许程序员在代码中插入元数据,这些元数据可以被编译器或运行时环境用来执行特定的任务。自定义注解不仅提高了代码的可读性,还简化了代码处理,特别是在框架和库...

    基于注解导出excel

    首先,我们需要理解注解(Annotation)在Java中的作用。注解是一种元数据,它提供了在源代码中嵌入信息的方式,这些信息可以被编译器或者运行时环境读取和处理。通过定义自定义注解,我们可以标记特定的类、方法或...

    Java 第二阶段建立编程思想 【枚举和注解】---- 代码

    Java 第二阶段建立编程思想 【枚举和注解】---- 代码 Java 第二阶段建立编程思想 【枚举和注解】---- 代码 Java 第二阶段建立编程思想 【枚举和注解】---- 代码 Java 第二阶段建立编程思想 【枚举和注解】---- 代码 ...

    使用Java自定义注解模拟实现SpringBoot相关注解.zip

    本教程将探讨如何使用Java自定义注解来模拟实现这些SpringBoot相关的注解功能。 首先,我们来看`@Autowired`注解。`@Autowired`是Spring框架中的一个关键注解,用于自动装配bean。当我们想在类中注入某个依赖时,而...

    aixos-ts-encapsulation_自定义注解_

    在IT行业中,尤其是在软件开发领域,注解(Annotation)是一种非常重要的编程概念,它...通过理解自定义注解的工作原理以及如何在TypeScript环境中使用它们,开发者可以更好地利用这一强大的工具来优化他们的应用程序。

    java 元注解+拦截器实现自定义注解.rar

    java 元注解+拦截器实现自定义注解 @CmwAutoWired:自定义依赖注入 注意:注入的接口和实现类需要在同一包名下,注解的是类则无限制 @FieldAnnotation:自定义属性注解 @MethodAnnotation:自定义方法注解 @...

    自定义注解实现拦截sql.rar

    在Java开发中,自定义注解是一种非常强大的工具,它允许我们为代码添加元数据,以便在运行时或编译时进行处理。本示例中,“自定义注解实现拦截SQL”是关于如何通过注解来动态修改执行的SQL语句,以在其中增加特定的...

    Java 使用注解拼接SQL语句

    在Java中,我们可以使用反射API或者AOP(面向切面编程)来处理注解。例如,我们可以创建一个切面,该切面会在方法调用前/后检查是否有`@Query`注解,并根据注解中的SQL模板执行数据库操作。 3. **动态SQL**: 使用...

    java 自定义注解例子

    本教程将通过一个超市自动售卖机的例子来详细讲解如何在Java中实现自定义注解。 首先,我们需要了解注解的基本结构。在Java中,注解以`@`符号开头,后面跟着注解的名称。自定义注解的定义类似于接口,但使用`@...

Global site tag (gtag.js) - Google Analytics