• XXX.getClass.getClassLoader.getResourceAsStream的方式加载文件,总是为null加载不到数据


    我在用如下的代码加载配置文件的时候,总是加载不到数据,文件位置的对的

    DBCP_Utiles01.class.getClassLoader().getResourceAsStream("dbcp.properties")

    资源路径在idea的resources路径下

    解决办法:

    • 1、查看下你的工程是不是被加载为maven工程,如果不是,右击下pom文件,as maven project ,变成pom工程先

    • 2、查看设置里面是否标识了resources文件夹

    • 3、resources下的配置文件有没有输出到target目录

    对于MAVEN项目,Eclipse会自动把项目srcmainjava目录下的配置文件(.xml)和资源文件(.properties)搬运到target目录下,而intellij idea默认是不会帮我们做这件事的。

    首先排除打包方式是pom

    把它删掉或者改成打包为war包,同时plugin也要为war版本,否则报webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update)错误

          <plugins>
               <plugin>
                  <artifactId>maven-war-plugin</artifactId>
                  <version>3.0.0</version>
              </plugin>
          </plugins>
    

    上面都没有问题时,在pom文件加入配置

      <build>
            <resources>
                <resource>
                    <directory>src/main/resources</directory>
                    <includes>
                        <include>**/*.properties</include>
                        <include>**/*.yml</include>
                        <include>**/*.xml</include>
                        <include>**/*.tld</include>
                        <include>**/*.xls</include>
                        <include>**/*.xlsx</include>
                    </includes>
                </resource>
                <resource>
                    <directory>src/main/java</directory>
                    <includes>
                        <include>**/*.properties</include>
                        <include>**/*.yml</include>
                        <include>**/*.tld</include>
                        <include>**/*.xls</include>
                        <include>**/*.xlsx</include>
                        <include>**/*.xml</include>
                    </includes>
                </resource>
            </resources>
        </build>
    

    这段配置的意思就是把src/main/java和src/main/resources目录下所有的<include>里配置的相关文件都包含进去
    同样,想包含其他什么文件,比如.txt文件,再加一个<include>标签类似的写法即可。

    再把项目“Reimport”(右键选中项目->Maven->Reimport)一下,启动服务器


    参考链接:https://www.cnblogs.com/lyh233/p/12746122.html
  • 相关阅读:
    Myeclipse如何使用自带git工具向远程仓库提交代码
    myEclipse配置java版本(环境、项目、编译)
    新搭建项目时需要修改的内容
    干锅土豆
    SpringMVC MongoDB之“基本文档查询(Query、BasicQuery)”
    史上最全web.xml配置文件元素详解
    Web.xml配置详解之context-param
    史上最全的maven的pom.xml文件详解
    MongoDB 进阶模式设计
    备忘整理
  • 原文地址:https://www.cnblogs.com/2393920029-qq/p/15400312.html
Copyright © 2020-2023  润新知