gpt4 book ai didi

java - 验证 Excel 导入的数据

转载 作者:搜寻专家 更新时间:2023-10-31 20:20:48 24 4
gpt4 key购买 nike

我正在使用 Apache POI 框架导入包含 30 列的 Excel 工作表。我正在读取每个单元格并将其插入数据库。

我需要针对不同的条件验证这些列中的每一列,除了使用多个 if else 条件并为每个列调用不同的方法之外,还有其他方法可以解决这个问题吗?

最佳答案

我对 java 的经验较少。可能有多种方法可以解决您的问题。然而,我已经使用策略模式设计了一个通用的验证类,它可以用于不同类型的项目而没有丑陋的 if-else block 。虽然我不得不为不同类型的字段创建单独的验证方法,但我觉得这比有很多 if else block 要好。

interface IValidator<T> {
boolean validate(T field);
}

class SomeFieldOne<T> implements IValidator<T> {
public boolean validate(T field) {
print("SomeFieldOne validation");
return true; // return true/false based on validation
}
}

class SomeFieldTwo<T> implements IValidator<T> {
public boolean validate(T field) {
print("SomeFieldTwo validate");
return true; // return true/false based on validation
}
}

class Context {
private IValidator validator;

public Context(IValidator validator) {
this.validator = validator;
}

public boolean validate(String field) {
return this.validator.validate(field);
}
}

public class TestValidation {
public static void main(String[] args) {
Context context;

context = new Context(new SomeFieldOne());
print(context.validate("some field one"));

context = new Context(new SomeFieldTwo());
print(context.validate("some field two"));

// test other fields ....
// .........
}
}

关于java - 验证 Excel 导入的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20020300/

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