千家信息网

SpringBoot中Dozer怎么用

发表于:2024-09-26 作者:千家信息网编辑
千家信息网最后更新 2024年09月26日,这篇文章主要为大家展示了"SpringBoot中Dozer怎么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"SpringBoot中Dozer怎么用"这篇
千家信息网最后更新 2024年09月26日SpringBoot中Dozer怎么用

这篇文章主要为大家展示了"SpringBoot中Dozer怎么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"SpringBoot中Dozer怎么用"这篇文章吧。

什么是Dozer?

Dozer是一种Java Bean到Java Bean的映射器,递归地将数据从一个对象复制到另一个对象,它是一个强大的,通用的,灵活的,可重用的和可配置的开源映射框架。
说白点就是dozer是一个能把实体和实体之间进行转换的工具.只要建立好映射关系.就像是ORM的数据库和实体映射一样。

dozer是用来两个对象之间属性转换的工具,有了这个工具之后,我们将一个对象的所有属性值转给另一个对象时,就不需要再去写重复的set和get方法了。

下面我们来学习一下dozer的使用

1.添加依赖

             net.sf.dozer            dozer            5.5.1        

2.创建配置类

package com.youyou.util.utils; import org.dozer.DozerBeanMapper;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import java.util.Arrays;import java.util.List;/** * 各个模块的dozer配置文件 */@Configurationpublic class DozerConfig {    @Bean(name = "org.dozer.Mapper")    public DozerBeanMapper dozer() {        //这里是配置文件的路径        List mappingFiles = Arrays.asList("dozer/dozer-mapping.xml");        DozerBeanMapper dozerBean = new DozerBeanMapper();        dozerBean.setMappingFiles(mappingFiles);        return dozerBean;    }}

3.创建两个POJO

创建DO

package com.youyou.address.entity; import com.baomidou.mybatisplus.annotation.TableName;import com.youyou.base.BaseEntity;import lombok.Data;/** * 数据库实体,联系人 */@Data@TableName("TS_Contacter")public class ContacterDO extends BaseEntity {    /**     * 姓名     */    private String name;     * 性别(0,女;1,男)    private String sex;     * 年龄    private Integer age ;     * 电话    private  String phone;     * 地址    private String location;     * 删除(0,未删除;1,删除)    private String dflag ;}

DO的父类

package com.youyou.base; import lombok.Data;import java.util.Date;/** * 所有实体类的父类 * * @author 刘朋 * 
date 2018-11-02 */@Datapublic abstract class BaseEntity { /** * 主键 */ private String id; * 创建时间 private Date createTime;}

创建VO

package com.youyou.address.vo; import lombok.Data;/** * 联系人vo * * @author 刘朋 * 
date 2018-11-05 */@Datapublic class ContacterVO { /** * 姓名 */ private String name; * 性别(0,女;1,男) private String sex; * 年龄 private Integer age ; * 电话 private String phone; * 地址 private String location;}

4.创建XML文件

                com.youyou.address.entity.ContacterDO        com.youyou.address.vo.ContacterVO     

5.使用

package com.youyou.address.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.baomidou.mybatisplus.core.metadata.IPage;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;import com.youyou.address.entity.ContacterDO;import com.youyou.address.service.ContacterService;import com.youyou.address.vo.ContacterVO;import io.swagger.annotations.Api;import io.swagger.annotations.ApiOperation;import org.dozer.DozerBeanMapper;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import java.util.List;@Api(description = "联系人接口")@RestController@RequestMapping(value = "/contacter")public class ContacterController {    @Autowired    private ContacterService service;    private DozerBeanMapper dozerBeanMapper ;    @ApiOperation(value = "新增")    @GetMapping("/add")    public ContacterVO add(ContacterVO contacterVO) {        System.out.println("添加一个联系人");        //使用dozer进行转换        ContacterDO contacterDO = dozerBeanMapper.map(contacterVO, ContacterDO.class);        service.insertAutoKey(contacterDO);        return contacterVO;    }}

以上是"SpringBoot中Dozer怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0