我已经编写了一个 java web 服务,我需要添加一个配置文件来存储诸如客户端名称之类的内容,这些内容将根据客户端的不同而更改。我正在寻找类似于 .net web.config 文件的内容。
我尝试过 web.xml 文件,但无法使其正常工作。我发现的大多数解决方案都是在 servlet 中使用,但我在本项目中没有使用它。我发现了一种读取 xml 文件的解决方案,但它需要从方法中抛出命名异常,并且 Web 服务不可部署。
我是一名 .net 开发人员,刚刚开始学习 java。我不确定到哪里去解决这个问题。我确信我错过了一些明显的东西。
以下是我尝试读取 web.xml 文件时使用的一些代码示例。
Context ctx = new InitialContext();
Context env = (Context) ctx.lookup("java:comp/env");
String filename = (String) env.lookup("file-name");
和
String email= getServletContext().getInitParameter("AdministratorEmail");
最佳答案
如果您在项目中使用 Maven 作为构建工具,则可以将配置文件放在 src/main/resources 文件夹中。您还可以将其放在应用程序的类路径中。 WEB-INF/lib 或 WEB-INF 类。然后您可以使用 ClassLoader 轻松加载该文件。
https://docs.oracle.com/javase/7/docs/api/java/lang/ClassLoader.html#getResourceAsStream(java.lang.String)
InputStream is= Thread.currentThread()
.getContextClassLoader()
.getResourceAsStream(FILE_NAME);
还有许多其他方法,具体取决于您使用的 Web 服务类型和框架/技术。如果您使用 Spring Boot 构建 REST 服务,则可以使用 application.yml/application.properties 来定义配置参数。
关于java - 如何为 Java Web 服务创建和使用配置文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48218607/