gpt4 book ai didi

java - 在 Java EE 服务器中存储企业应用程序的状态(例如用于 lucene 索引)

转载 作者:行者123 更新时间:2023-11-30 07:36:35 28 4
gpt4 key购买 nike

我需要在 Java EE 应用程序启动时创建一个 Lucene 索引,但我不想自己决定索引在文件系统中的位置。应用程序通常如何存储运行时创建的任何文件,引擎是否为每个应用程序基础提供了任何类型的存储,我可以使用。

最佳答案

I do not want to decide on the location of the index in filesystem myself. How do applications in general store any files created while running, is there any kind of store provided by the engine per application basis etc

默认情况下,java.io 中的类包根据当前工作目录 解析相对路径名 - 即文件系统中 java 所在的位置命令被调用 - 你可以使用 user.dir系统属性:

String curDir = System.getProperty("user.dir"); 

但这样做远非理想(实际上,写入文件对于可移植应用程序来说并不理想),我不推荐这种方法,但建议使用绝对文件系统路径,例如系统属性:

new File(System.getProperty("my.directory" + File.separator + "xxx");

特性所在my.directory将在应用程序服务器启动脚本中设置,例如假设 JBoss 安装在 /opt 下, 使用 -Dmy.directory=/var/opt/jboss/<somedir>符合 FHS。

请记住:

  • 写入 FS 不利于应用程序的可移植性。如果可能,最好写入数据库
  • 使用 java.io来自 EJBs 的理论上是 forbidden .

关于java - 在 Java EE 服务器中存储企业应用程序的状态(例如用于 lucene 索引),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3475084/

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