废话不多说直接上代码:
/** * 动态根据id查询 * * @return */ @ApiOperation(value = "动态根据id查询", notes = "动态根据id查询") @GetMapping("/byId") public Object getBiddingBuyAppliedPage(String name, Long id) throws Exception { name += "Controller"; //首字母转换小写 String nameTo = new StringBuilder().append(Character.toLowerCase(name.charAt(0))).append(name.substring(1)).toString(); //根据名称获取class Class<?> aClass = Class.forName("com.sxspv.cloud.bidding.controller." + name); //获取方法名 Method method = aClass.getDeclaredMethod("getById", id.getClass()); //优化反射 method.setAccessible(true); //调用方法返回结果 return method.invoke(SpringContextHolder.getBean(nameTo), id); }