首先我们定义一个接口:SaleFoodService,里面的功能位saleFood
public interface SaleFoodService {
AjaxResult saleFood();
}
然后分别写出实现类:
@Service("Vegetables")
public class VegetablesServiceImpl implements SaleFoodService {
@Resource
private FoodMapper foodMapper;
@Override
public AjaxResult saleFood() {
return new AjaxResult(true, foodMapper.findVegetables());
}
}
@Service("Fruit")
public class FruitServiceImpl implements SaleFoodService {
@Resource
private FoodMapper foodMapper;
@Override
public AjaxResult saleFood() {
return new AjaxResult(true, foodMapper.findFruit());
}
}
创建一个SaleFood类用于调用
public class SaleFood {
private SaleFoodService saleFoodService;
public void setSaleFoodService(SaleFoodService saleFoodService) {
this.saleFoodService = saleFoodService;
}
public AjaxResult saleFood(){
return this.saleFoodService.saleFood();
}
}
最后在Controller层进行调用即可
@RestController
@RequestMapping("food")
public class SaleFoodController {
@Resource(name = "Fruit")
private SaleFoodService FruitService;
@Resource(name = "Vegetables")
private SaleFoodService VegetablesService;
@GetMapping("sale")
public AjaxResult saleFood(@RequestParam("type") Integer type) {
SaleFood saleFood = new SaleFood();
if (type.equals(1)) {
saleFood.setSaleFoodService(FruitService);
} else {
saleFood.setSaleFoodService(VegetablesService);
}
return saleFood.saleFood();
}
}
调用结果: