小弟最近做了一个项目,其中涉及到的某个模块,需要有多表联合查询并存储到结果集中,再在页面上以列表的方式显示出来。这里现在有一件事有点迷惑。
假如,我现在涉及到两个Bean,其中一个Bean是用户的信息,我们命名UserBean。另外一个是汽车的Bean,我们命名CarBean
其中UserBean里包含一些用户的基础信息,姓名,性别,联系方式等。CarBean当中包含一些车辆信息,牌照,汽车类型等。
数据库表设计如下:
表名:user表 user_id,user_name,user_contact
car表 car_id,car_number,car_type,car_user_id
其中Car表中的car_user_id是关联到User表中的用户ID,也就是这台汽车属于哪个用户的。
我现在要调用车辆信息的列表,但是需要看到这辆车的主人是谁。
SQL语句是这么写的:SELECT * FROM user,car WHERE user_id = car_user_id ORDER BY car_id DESC
我存储到结果集中,并循环存储到List中
User userInfo = new User;
Car carInfo = new Car();
aList = new ArrayList;
while(rs.next)
carInfo.setCarId(rs.getString("car_id"));
rs.getString("user_name");
aList.add(carInfo);
}
return aList;
现在的问题是:我还需要把Car这个Bean添加两个关于用户姓名的SET和GET方法么?如果是那样的话,如果我还需要更多的用户信息,是不是还要在Car这个Bean加入更多的用户更多的字段呢?那样会显得很繁琐,而且属于重复定义用户信息字段了。
小弟想问问各位达人,有没有更好的设计方法?