304 APPENDIX C (Web site hosting) n HIBERNATE AND SPRING APPENDIX

304 APPENDIX C n HIBERNATE AND SPRING APPENDIX C n HIBERNATE AND SPRING public interface PaperDao { public List getAll(); public void createPaper(final Paper paper); public Paper getPaper(final Integer paperId); public Paper createArticle(final Integer paperId,final Article article); } Ideally, you should define an interface to specify the methods that your DAO will contain. Our sample application requires a single DAO with a few simple methods (shown in Listing C-7). With the interface clearly specified, your DAO class should then extend the HibernateDaoSupport class and implement the interface that you have defined. Extending HibernateDaoSupport provides a number of get/set pairs for necessary Spring attributes (specifically the sessionFactory attribute) and various helper methods for implementing your DAO. A typical DAO method implementation using these methods is shown in Listing C-8. Listing C-8. Implementing getAll() Using the Methods from the HibernateDaoSupport Class @SuppressWarnings(”unchecked”) public List getAll() { Session session = getSession(); List papers = (List)session.createQuery(”from Paper”).list(); releaseSession(session); return papers; } The getSession() and releaseSession() methods are derived from the DAO class. They are roughly equivalent to the session factory s openSession()method and the session s close() method, respectively. The HibernateDaoSupport class also provides access to an appropriately configured helper object: HibernateTemplate. Using this object, the preceding code can be rewritten as shown in Listing C-9. Listing C-9 Implementing the getAll() Method Using the HibernateTemplate Class @SuppressWarnings(”unchecked”) public List getAll() { return (List)getHibernateTemplate().find(”from Paper”); } This notably reduces the amount of boilerplate session management code that is required to process this simply query. HibernateTemplate provides a set of methods (shown in Table C-1) that allow you to carry out most of the basic Hibernate operations in a similar single line of code.
We recommend high quality webhost to host and run your jsp application: christian web host services.

Leave a Reply