learn how to use hibernate, all the codes are based on document, some of the tests are changed by author