从JAR运行命令解析所需的参数

时间:2017-10-10 10:08:01

标签: java spring spring-boot

我编写了一个Java工具,用Spring boot解析服务器日志。最终,该应用程序将转换为JAR文件。什么时候,我会运行像

这样的命令
java -cp "parser.jar" com.ef.Parser --startDate=2017-01-01.13:00:00 --duration=hourly --threshold=100

该工具将找到从2017-01-01.13:00:00到2017-01-01.14:00:00(一小时)开始发出超过100个请求的任何IP,并将它们打印到控制台并将它们加载到另一个MySQL表,其中包含对其被阻止的原因的评论。

提供了应用程序结构,

enter image description here

spring boot Parser.java文件就像,

@EnableTransactionManagement
@SpringBootApplication(scanBasePackages = {"com.ef"}, exclude = JpaRepositoriesAutoConfiguration.class)
public class Parser implements CommandLineRunner {

    public static void main(String[] args) throws Exception {

        SpringApplication application = new SpringApplication(Parser.class);
        application.run(args);
    }

    @Override
    public void run(String... strings) throws Exception {

        exit(0);
    }
}

让我们想象一下我在parser.jar的文件夹中,然后运行前面提供的命令。在这种情况下,如何删除变量中的startDatedurationthreshold参数?

显然,我可以编写方法来解析来自startDate的{​​{1}}或duration,但是,我在这个场景中有点困惑。

0 个答案:

没有答案