如何为 Spring Web 项目封装 cli 接口

新手上路,请多包涵

项目为标准 Spring Web 项目,其中一些任务(如修复数据,发送邮件)希望在 shell 中通过命令触发,请问这个有什么解决方案么?

现有方案是利用单元测试来执行 这类任务,感觉非常不优雅。

阅读 3.5k
1 个回答

既然是Spring MVC的项目, 你可以在Controller 里定义一些url, 例如 /admin/repair 或 /admin/resend-email之类的。

然后在Shell scripts里面, curl localhost:8080/admin/repair 来发送一个http 请求到那个url去执行你的代码

最好用Spring Security来保护一下/admin/*的url, 同时在你的curl 中加入一些参数来实现验证

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题