教程 > mapstruct 教程 > 阅读:1822

mapstruct 使用 dateformat——迹忆客-ag捕鱼王app官网

mapstruct 可以无缝地将日期转换为所需格式的字符串。 我们可以在 @mapping 注释期间将所需的格式作为 dateformat 传递。 例如,考虑以数字形式存储的日期以特定格式显示的情况。

  • source - 实体的日期为 gregoriancalendar(2015, 3, 5)。
  • target - 将日期显示为 05.04.2015 的模型。
  • dateformat - 使用格式 dd.mm.yyyy

示例

打开 numberformat 映射章节中更新的项目映射。

使用以下代码更新 carentity.java

carentity.java

package com.jiyik.entity;
import java.util.gregoriancalendar;
public class carentity {
    private int id;
    private double price;
    private gregoriancalendar manufacturingdate;
    public int getid() {
        return id;
    }
    public void setid(int id) {
        this.id = id;
    }
    public double getprice() {
        return price;
    }
    public void setprice(double price) {
        this.price = price;
    }
    public gregoriancalendar getmanufacturingdate() {
        return manufacturingdate;
    }
    public void setmanufacturingdate(gregoriancalendar manufacturingdate) {
        this.manufacturingdate = manufacturingdate;
    }
}

使用以下代码更新 car.java

car.java

package com.jiyik.model;
public class car {
    private int id;
    private string price;
    private string manufacturingdate;
    public int getid() {
        return id;
    }
    public void setid(int id) {
        this.id = id;
    }
    public string getprice() {
        return price;
    }
    public void setprice(string price) {
        this.price = price;
    }
    public string getmanufacturingdate() {
        return manufacturingdate;
    }
    public void setmanufacturingdate(string manufacturingdate) {
        this.manufacturingdate = manufacturingdate;
    }
}

使用以下代码更新 carmapper.java

carmapper.java

package com.jiyik.mapper;
import com.jiyik.entity.carentity;
import com.jiyik.model.car;
import org.mapstruct.mapper;
import org.mapstruct.mapping;
@mapper
public interface carmapper {
    @mapping(source = "price", target = "price", numberformat = "$#.00")
    @mapping(source = "manufacturingdate", target = "manufacturingdate", dateformat = "dd.mm.yyyy")
    car getmodelfromentity(carentity carentity);
}

使用以下代码更新 carmappertest.java

carmappertest.java

package com.jiyik.mapper;
import com.jiyik.entity.carentity;
import com.jiyik.model.car;
import org.mapstruct.mapper;
import org.mapstruct.mapping;
@mapper
public interface carmapper {
    @mapping(source = "price", target = "price", numberformat = "$#.00")
    @mapping(source = "manufacturingdate", target = "manufacturingdate", dateformat = "dd.mm.yyyy")
    car getmodelfromentity(carentity carentity);
}

运行以下命令来测试映射。

$ mvn clean test

执行结果如下

mapstruct 使用 dateformat

查看笔记

扫码一下
查看教程更方便
网站地图