gpt4 book ai didi

java - 什么样的设计模式适合我的需要?

转载 作者:行者123 更新时间:2023-11-29 05:22:08 25 4
gpt4 key购买 nike

我有以下类(class):

    public class A {

private String a;
private Long b;
private Date c;

//getters, setters, constructors
}

而且我需要能够将其导出为具有不同模板的 Excel。例如,一个 excel 具有以下标题:一个 b c

另一个excel有如下模板:b a c

另一个模板可能是这样的:一个

什么是设计代码的好方法,以便我可以根据一个或另一个模板格式化 A 对象?是否有我可以查看的特定设计模式?

最佳答案

我认为你可以使用适配器模式,你需要为不同的模板制作不同的适配器。

将您的对象与适配器绑定(bind),适配器中的一些逻辑会将您传递的对象的值分配给您要填充值的模板。

通过制作适配器,您可以在不更改现有格式的情况下制作新格式,这将使代码更易于维护和分离。

这只是一个粗略的想法,哪个概念可以应用在这里,您仍然可以在其中进行许多修改。

适配器接口(interface)

public interface Adapter {

}

适配器类

public class Format2Adapter implements Adapter {

private Long title;
String subtitle;

public void fillTemplate(Core c){
title = c.getB();
}
}

Format2Adapter 类

public class Format2Adapter implements Adapter {

private Long title;
String subtitle;

public void fillTemplate(Core c){
title = c.getB();
}
}

业务对象类

import java.util.Date;

public class Core {

private String a;
private Long b;
private Date c;

public String getA() {
return a;
}

public void setA(String a) {
this.a = a;
}

public Long getB() {
return b;
}

public void setB(Long b) {
this.b = b;
}

public Date getC() {
return c;
}

public void setC(Date c) {
this.c = c;
}

// getters, setters, constructors
}

关于java - 什么样的设计模式适合我的需要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24278945/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com