java map 结构体_MapStruct快速入门

MapStruct是一个代码生成器,简化了Java Bean之间的映射处理。本文介绍了如何基于Maven搭建MapStruct开发环境,展示了如何创建Mapper接口并自动生成实现,以及如何在测试中使用Mapper进行对象转换。
摘要由CSDN通过智能技术生成

475b1394fb196a0fd35e4dab841ef0ee.png

MapStruct是一个代码生成器,简化了不同的Java Bean之间映射的处理,所以映射指的就是从一个实体变化成一个实体。例如我们在实际开发中,DAO层的实体和一些数据传输对象(DTO),大部分属性都是相同的,只有少部分的不同,通过mapStruct,可以让不同实体之间的转换变的简单。我们只需要按照约定的方式进行配置即可。

MapStruct是一个可以处理注解的Java编译器插件,可以在命令行中使用,也可以在IDE中使用。MapStruct有一些默认配置,但是也为用户提供了自己进行配置的途径。

1 开发环境搭建--基于Maven

MapStruct主要由两部分组成:

org.mapstruct:mapstruct:包含了一些必要的注解,例如@Mapping。我们使用的JDK版本高于1.8,当我们在pom里面导入依赖时候,建议使用坐标是:org.mapstruct:mapstruct-jdk8,这可以帮助我们利用一些Java8的新特性。

org.mapstruct:mapstruct-processor:注解处理器,根据注解自动生成mapper的实现。...

1.1.0.Beta1

...

org.mapstruct

mapstruct-jdk8

${org.mapstruct.version}

junit

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux中,可以通过sysconf(_SC_CLK_TCK)函数来获取系统的tick计数频率。这个频率表示内核的计时频率,而不是运行频率。具体的代码示例如下: #include <stdio.h> #include <unistd.h> #include <sys/times.h> int main() { long sysHz = sysconf(_SC_CLK_TCK); printf("系统的tick计数频率为:%ld\n", sysHz); unsigned long tickCount = (unsigned long) times(NULL); printf("当前tick计数为:%ul\n", tickCount); sleep(1); tickCount = (unsigned long) times(NULL); printf("一后的tick计数为:%ul\n", tickCount); sleep(1); tickCount = (unsigned long) times(NULL); printf("再过一后的tick计数为:%ul\n", tickCount); return 0; } 这段代码会输出系统的tick计数频率以及当前的tick计数,然后分别让程序休眠1并再次获取tick计数。这样就可以通过比较tick计数的差值来得到时间的流逝。注意,tick计数的单位是时钟滴答数,需要根据tick计数频率转换为实际的时间单位。 另外,在Linux中还可以使用clock_gettime函数来获取系统的时间。CLOCK_MONOTONIC代表系统启动后流逝的时间,而CLOCK_REALTIME代表现实的时间。具体的代码示例如下: #include <stdio.h> #include <time.h> int main() { struct timespec tp; clock_gettime(CLOCK_MONOTONIC, &tp); printf("系统启动后流逝的时间为:%ld %ld纳\n", tp.tv_sec, tp.tv_nsec); clock_gettime(CLOCK_REALTIME, &tp); printf("现实的时间为:%ld %ld纳\n", tp.tv_sec, tp.tv_nsec); return 0; } 这段代码会输出系统启动后流逝的时间和现实的时间,单位分别是和纳
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值