ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
当前位置:首页 >> 低调看体育直播 >> web前端 >> java与Spring中的资源加载

java与Spring中的资源加载(1/6)

来源:网络整理     时间:2016-04-02     关键词:

本篇文章主要介绍了"java与Spring中的资源加载",主要涉及到方面的内容,对于web前端感兴趣的同学可以参考一下: java Resource 资源加载: xml properties 包名路径 1 ClassLoad.getResource(Strin...

java Resource 资源加载: 
     xml properties  包名路径 
     1 ClassLoad.getResource(String str); 
     2 Class.getResource(Stirng str); 
     看第二种加载方式的内部一段代码 

Java代码  java与Spring中的资源加载

  1. private String resolveName(String name) {  
  2. if (name == null) {  
  3. return name;  
  4.         }  
  5. if (!name.startsWith("/")) {  
  6.             Class c = this;  
  7. while (c.isArray()) {  
  8.                 c = c.getComponentType();  
  9.             }  
  10.             String baseName = c.getName();  
  11. int index = baseName.lastIndexOf('.');  
  12. if (index != -1) {  
  13.                 name = baseName.substring(0, index).replace('.''/')  
  14.                     +"/"+name;  
  15.             }  
  16.         } else {  
  17.             name = name.substring(1);  
  18.         }  
  19. return name;  
  20.     }  


这就说明了 
1最终都是通过ClassLoad进行加载的 
2第二种方式是可以使用相对路径的,也就是资源相对于本类路径下的路径 
如果本来的包名为com.xx.test 下面有一个xx.xml文件和xx.java类。 
我们在xx.java类中想加载xx.xml。那么它的路径可以写为: 
/com/xx/xx.xml 或者是 xx.cml。 
同样的道理如果test包下面还有一个text包,这个包里面有一个yy.java 
那么相对路径就是../xx.xml就可以加载到资源。 
如果是ClassLoad.getResource(str);这种方式只能写路径的全限定名,不加“/”,也就是com/xx/xx.xml 
后又测试了几种文件xml properties 和包路径是可以的 但是java类却不行后追踪源码发现 

Java代码  java与Spring中的资源加载

相关图片

相关文章