使用Hibernate告别DTO

来源:互联网 发布:小白的第一本书python 编辑:程序博客网 时间:2024/06/03 01:19

在使用Entity Bean时,为了减少网络调用,提高系统性能,在不同的层间传递数据时,通常会使用DTO,原因来自于EJB对象无法序列化传送到远程,但是Hibernate中使用的POJO对象是可以序列化的,所以可以通过使用脱管对象来替代EJB中的DTO而无须序列化。这样省去了开发DTO对象(通常DTO对象只是对Entity Bean的简单镜像)。

代码实例:

以下是一个Session Bean代码的一部分。

public java.util.List getBookByName(String name){

       java.util.List books=null;

       try {

              ……

            books=session.createQuery("from Book as book where book.book_name like ?").setString(0,"%"+name+"%").list();

                  

           session.close();

      

             

       } catch (Exception e1) {

              e1.printStackTrace();

       }

 return books;

}

当然为了支持序列化Book持久化类必须实现java.io.serialize

原创粉丝点击