15.8 用反射+抽象工厂的数据访问程序