Does the Java API have any way of automatically buffering Collections, so that it stores only a certain amount in memory and stuff that was not recently used goes to the hard drive if there is a lot in memory?
I don't think such a thing exists inherently, at least not in the collections package. I suppose you have too much stuff to let the OS handle everything with paging? If you want to try writing this yourself, the key will be use of the SoftReference class.