hibernate查询

用户的查询

   *  单表的查询

       *  页面上要显示的字段和数据库比,太少

           select new Person(pid,pname) from Person;

       *  页面上要显示的字段和数据库的字段差不多

           from Person

   *  多表的查询

       客户和订单表

        *  在一个页面中显示客户信息,在客户信息中有一个超级连接,点击超级连接

           在另外一个页面中显示该客户的订单的信息

           *  后台:"from Customer"

              因为一对多集合默认的加载模式是懒加载,所以在执行上述hql语句时

              并没有加载客户的订单,这样在第一个页面只能加载客户信息

           *  当点击超级连接的时候,后台"from Order o where o.customer.cid=?"

              利用这样的hql语句就能够加载订单信息

        *  在一个页面中即显示客户信息也显示客户的订单信息

           采用迫切左外连接,只发出一条SQL语句

       三张表(一对多、多对多)可以采用三张表迫切左外连接的方式来做

       如果是多张表,页面上的字段和数据库的字段相差太多

           "from User";

           user.getDepartment().getDname()

           user.getPosts()

             pname

相关推荐