在Hibernate应用中,持久化类的访问方法被谁调用? 选自<<精通Hibernate:Java对象持久化技术详解>> 作者:孙卫琴 来源:www.javathinker.org 如果转载,请标明出处,谢谢 在Hibernate应用中,持久化类的访问方法有两个调用者: (1) Java应用程序:调用Customer对象的getXXX()方法,读取Customer信息,把它输出到用户界面。调用Customer对象的setXXX()方法,把用户输入的Customer信息写入到Customer对象中。 (2)Hibernate:调用Customer对象的getXXX()方法,读取Customer信息,把它保存到数据库。调用Customer对象的setXXX()方法,把从数据库中读出的Customer信息写入到Customer对象。 图1显示了Java应用程序和Hibernate调用Customer对象的访问方法的过程。 确切的说,当Hibernate的Session在执行save()、update()或saveOrUpdate()方法时会调用Customer对象的getXXX()方法,当Session执行get()、load()或find()方法时会调用Customer对象的setXXX()方法。 值得注意的是,Java应用程序不能访问持久化类的private类型的getXXX()和setXXX()方法,而Hibernate没有这个限制,它能够访问各种访问级别的getXXX()和setXXX()方法,Java访问级别包括:private、default、protected和public。