Oh boy, well, the reason it's probably so hard to find is that this is a pretty basic computer science technique. You use a cache anywhere where you need to trade memory for processing speed -- in other words, if you have an operation that will be repeated several times, and each time you perform that operation it takes 100 milliseconds, then if you can instead fetch the result from memory (e.g. a cache) in only 1 millisecond, then it makes sense that you would use a cache in front of the code that performs that operation.
There's a very basic explanation of caching at
http://computer.howstuffworks.com/cache.htm but I doubt it's a the level you want (but I may be wrong). What I'm interested in is why you want a cache in WebSphere. What is leading you to ask this question in this forum? Tell me the problem you are facing and I can help you understand if WebSphere's caching technologies may help.