在 spring mvc 应用程序中,引用文件系统的最佳方法是什么?
假设我想知道我的应用程序路径的根?
我应该创建一个属性文件并在属性文件中硬编码这个值,然后为生产和开发环境创建不同的版本吗?
我可能还想在我的应用程序之外引用一个文件,所以我猜一个属性文件最适合这个对吗?
在 spring mvc 应用程序中,引用文件系统的最佳方法是什么?
假设我想知道我的应用程序路径的根?
我应该创建一个属性文件并在属性文件中硬编码这个值,然后为生产和开发环境创建不同的版本吗?
我可能还想在我的应用程序之外引用一个文件,所以我猜一个属性文件最适合这个对吗?
我将您的问题理解为配置/发布问题,而不是编码问题。如果你想访问文件(比如使用绝对路径),有不同的方法来实现它:
如果您使用 Maven 构建您的应用程序。创建具有相应属性的maven 配置文件file.path
,例如并在构建时将属性填充到 spring bean(例如字符串)
创建不同的属性文件,其中包含不同环境的配置参数。并让maven填充spring conf中的占位符,应该使用哪个属性文件。
使用弹簧型材。将与服务器相关的 bean 放入配置文件中,您的应用程序在运行时选择正确的配置文件(bean 集)。
好吧,如果您为不同的环境使用不同的数据库,您可以考虑将一些配置参数保存在配置表中。应用程序在启动时或需要时加载这些数据。至少这是另一种选择。
这回答了你的问题吗?还是我只是在说别的?...
获取真实路径并完成剩余动作
String realContextPath = session.getServletContext().context.getRealPath(request.getContextPath());