Nope, it's not immediate in the journal. Remember when you erase something the fs (well not ext2 or ext3) doesn't go and write zeros were the file physically existed on the drive. It writes the changes to the disk's buffer cache. Later, it simply deletes the pointers to that file in the metadata of the fs. The journal is an image of this metadata. Since the journal is only updated at regular intervals there is a window of opportunity to "undelete" something.
Granted it's a last ditch solution, since shutting down a computer in that fashion is pretty hard on it, especially the hard drive. But if it means saving some important data it's probably worth it.
For more interesting reading than this check out this article