gpt4 book ai didi

java - 我可以从Java中的属性文件调用方法吗

转载 作者:行者123 更新时间:2023-12-02 08:13:25 25 4
gpt4 key购买 nike

我正在使用java读取Excel文件,我已经为我的业务逻辑编写了一些方法,并且我想使用属性文件来实现。

我想做的是:

我有 10 个列和 10 个方法,我需要在属性文件中声明此方法,使用该文件。

假设对于 A 列,我只需要 2 个方法,那么我只能使用这 2 个方法,对于下一个 B 列,假设有 10 个方法,依此类推。

我可以这样做吗?或者有其他方法可以实现吗?

如果有其他方法可以实现此目的,请建议我。提前致谢。

最佳答案

为了防止误解:属性文件只是文本文件,因此您需要使用 Java 代码来处理它们。它们仅提供 String->String (键->值)映射,因此您需要自己解析和解释字符串。

话虽如此,这里有一个关于您可能(想要)做什么的建议:

由于您的问题不太清楚,我将做出一些假设:

  1. 您的属性文件包含以下内容:

    column1=method1,method7
    column2=method1,method2,method3
    etc.

  2. 所有方法均使用公共(public)签名在一个类中声明

  3. 解析 Excel 文件时,您可能希望根据属性文件将方法应用到列。

所以,这里有一些关于您可以做什么的提示:

  1. 解析属性文件并创建每列的方法名称列表
  2. 处理单元格/列时,获取相应列的方法名称
  3. 使用 YourClass.class.getMethod(methodName,parameterTypes) 获取 Method 实例。
  4. 调用 Method#invoke(...) 来调用该方法。

编辑:

作为将所有方法放在一个类中的替代方法,您还可以使用完全限定的类名,例如yourpackage.YourClass#method1,在#处分割得到类名和方法,然后使用Class.forName(fqcn)得到类并最终调用 getMethod(...)

如果签名不同,您可能必须使用更复杂的表示法并解析参数类。

有可用的解析器,但我不知道。然而,一些 apache commons 项目如 ElConfiguration可能对这项任务有用。

关于java - 我可以从Java中的属性文件调用方法吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6925989/

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