java - What is the difference between Class.getResource() and ClassLoader.getResource()? -
java - What is the difference between Class.getResource() and ClassLoader.getResource()? -
i wonder difference between class.getresource() , classloader.getresource()?
edit: want know if caching involved on file/directory level. in "are directory listings cached in class version?"
afaik next should same, not:
getclass().getresource() getclass().getclassloader().getresource() i discovered when fiddling study generation code creates new file in web-inf/classes/ existing file in directory. when using method class, find files there @ deployment using getclass().getresource(), when trying fetch newly created file, recieved null object. browsing directory shows new file there. filenames prepended forwards slash in "/myfile.txt".
the classloader version of getresource() on other hand did find generated file. experience seems there kind of caching of directory listing going on. right, , if so, documented?
from api docs on class.getresource()
finds resource given name. rules searching resources associated given class implemented defining class loader of class. method delegates object's class loader. if object loaded bootstrap class loader, method delegates classloader.getsystemresource(java.lang.string).
to me, reads "class.getresource calling own classloader's getresource()". same doing getclass().getclassloader().getresource(). not. please provide me illumination matter?
to reply question whether there caching going on.
i investigated point farther running stand-alone java application continuously loaded file disk using getresourceasstream classloader method. able edit file, , changes reflected immediately, i.e., file reloaded disk without caching.
however: i'm working on project several maven modules , web projects have dependencies on each other. i'm using intellij ide compile , run web projects.
i noticed above seemed no longer hold true, reason beingness file beingness loaded baked jar , deployed depending web project. noticed after trying alter file in target folder, no avail. made seem though there caching going on.
java classloader getresource
Comments
Post a Comment