cirton
V2EX  ›  Java

请问如何使用语句获取 WebRoot 下的资源文件?

  •  
  •   cirton · Jan 15, 2019 · 2190 views
    This topic created in 2748 days ago, the information mentioned may be changed or developed.

    现在使用语句 类名.class.getClassLoader().getResourceAsStream(target_file); 读取 target_file 文件内容;

    但上面语句默认获取的路径是 D:/workspace/java_17/mywebApp/target/classes/,只能读取该目录下的文件;

    而目标文件路径如下 D:/workspace/java_17/mywebApp/WebRoot/target_file, 如果要读取该目录下的文件,该如何操作?

    5 replies    2019-01-16 15:11:25 +08:00
    zhenwang
        1
    zhenwang  
       Jan 15, 2019
    webroot 这个目录的东西没有编译到 target/classes/下么?
    cirton
        2
    cirton  
    OP
       Jan 16, 2019
    @w4ngzhen 没有,target/classes/下只有 java 代码的 class 文件,webroot 下的 html,jsp 文件都没有编译到该目录下.
    fatcheung
        3
    fatcheung  
       Jan 16, 2019
    获取根路径
    spring:
    path = request.getSession().getServletContext().getRealPath("/");
    war 包:
    path = class.getClassLoader().getResource("/").getPath();
    path = path.substring(0, path.indexOf("WEB-INF"));
    zhenwang
        4
    zhenwang  
       Jan 16, 2019 via iPhone
    @cirton 按照正常来说,如果你这些是 web 项目的资源文件,应该在完成项目编译后输出到 classes 下面的啊。
    JohnZorn
        5
    JohnZorn  
       Jan 16, 2019 via Android
    Classes 往上走一层(.. 或者 getparent?)就有吧
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2937 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 07:30 · PVG 15:30 · LAX 00:30 · JFK 03:30
    ♥ Do have faith in what you're doing.