@Override public User FindUserByid(Long id) { Session session = sessionFactory.openSession(); org.hibernate.Query query = session .createQuery("from User as u where u.id=?"); query.setParameter(0, id); User u = (User) query.list().get(0); Set<MealOrder> os = u.getMealOrders(); os.size(); return u; }现在os就是通过这种方式拿出来的,size为2,可是数据是不是依旧为空?
select user0_.ID as ID1_1_0_, mealorders1_.ID as ID1_0_1_, user0_.cleartextPassword as cleartex2_1_0_, user0_.createTime as createTi3_1_0_, user0_.email as email4_1_0_, user0_.lastEditTime as lastEdit5_1_0_, user0_.lastLoginIP as lastLogi6_1_0_, user0_.loginCount as loginCou7_1_0_, user0_.loginname as loginnam8_1_0_, user0_.onlineTime as onlineTi9_1_0_, user0_.passwordEditTime as passwor10_1_0_, user0_.postion as postion11_1_0_, user0_.telePhone as telePho12_1_0_, user0_.userLocation as userLoc13_1_0_, user0_.userName as userNam14_1_0_, user0_.userPassword as userPas15_1_0_, user0_.userState as userSta16_1_0_, mealorders1_.beginSupplyDate as beginSup2_0_1_, mealorders1_.beginSupplyTime as beginSup3_0_1_, mealorders1_.endSupplyDate as endSuppl4_0_1_, mealorders1_.endSupplyTime as endSuppl5_0_1_, mealorders1_.mealMenuID as mealMenu6_0_1_, mealorders1_.mealMenuName as mealMenu7_0_1_, mealorders1_.mealPackageID as mealPack8_0_1_, mealorders1_.mealPackageName as mealPack9_0_1_, mealorders1_.mealPackagePrice as mealPac10_0_1_, mealorders1_.orderState as orderSt11_0_1_, mealorders1_.orderTime as orderTi12_0_1_, mealorders1_.postion as postion13_0_1_, mealorders1_.restaurantID as restaur14_0_1_, mealorders1_.restaurantName as restaur15_0_1_, mealorders1_.supplyTimeType as supplyT16_0_1_, mealorders1_.telePhone as telePho17_0_1_, mealorders1_.UserID as UserID18_0_1_, mealorders1_.userID as userID18_0_1_, mealorders1_.userLocation as userLoc19_0_1_, mealorders1_.userName as userNam20_0_1_ from UserBaseInfo user0_ inner join MealOrder mealorders1_ on user0_.ID=mealorders1_.UserID; 通过生成的关联查询是可以查询出来数据的
@Override
public User FindUserByid(Long id) {
Session session = sessionFactory.openSession();
org.hibernate.Query query = session
.createQuery("from User as u where u.id=?");
query.setParameter(0, id);
User u = (User) query.list().get(0);
Set<MealOrder> os = u.getMealOrders();
os.size();
return u;
}现在os就是通过这种方式拿出来的,size为2,可是数据是不是依旧为空?
user0_.ID as ID1_1_0_,
mealorders1_.ID as ID1_0_1_,
user0_.cleartextPassword as cleartex2_1_0_,
user0_.createTime as createTi3_1_0_,
user0_.email as email4_1_0_,
user0_.lastEditTime as lastEdit5_1_0_,
user0_.lastLoginIP as lastLogi6_1_0_,
user0_.loginCount as loginCou7_1_0_,
user0_.loginname as loginnam8_1_0_,
user0_.onlineTime as onlineTi9_1_0_,
user0_.passwordEditTime as passwor10_1_0_,
user0_.postion as postion11_1_0_,
user0_.telePhone as telePho12_1_0_,
user0_.userLocation as userLoc13_1_0_,
user0_.userName as userNam14_1_0_,
user0_.userPassword as userPas15_1_0_,
user0_.userState as userSta16_1_0_,
mealorders1_.beginSupplyDate as beginSup2_0_1_,
mealorders1_.beginSupplyTime as beginSup3_0_1_,
mealorders1_.endSupplyDate as endSuppl4_0_1_,
mealorders1_.endSupplyTime as endSuppl5_0_1_,
mealorders1_.mealMenuID as mealMenu6_0_1_,
mealorders1_.mealMenuName as mealMenu7_0_1_,
mealorders1_.mealPackageID as mealPack8_0_1_,
mealorders1_.mealPackageName as mealPack9_0_1_,
mealorders1_.mealPackagePrice as mealPac10_0_1_,
mealorders1_.orderState as orderSt11_0_1_,
mealorders1_.orderTime as orderTi12_0_1_,
mealorders1_.postion as postion13_0_1_,
mealorders1_.restaurantID as restaur14_0_1_,
mealorders1_.restaurantName as restaur15_0_1_,
mealorders1_.supplyTimeType as supplyT16_0_1_,
mealorders1_.telePhone as telePho17_0_1_,
mealorders1_.UserID as UserID18_0_1_,
mealorders1_.userID as userID18_0_1_,
mealorders1_.userLocation as userLoc19_0_1_,
mealorders1_.userName as userNam20_0_1_
from
UserBaseInfo user0_
inner join
MealOrder mealorders1_
on user0_.ID=mealorders1_.UserID;
通过生成的关联查询是可以查询出来数据的