sql 注入真实例子 写一个sql 给代码 就可以返回执行结果
入参 postman 接口调用 get请求 可以用查询sql 可以用修改sql 可以用删除sql
注意 目前入参sql 有中文可能会乱码
controller 层
@RequestMapping("/select")
public RestResultDTO select(Param param) {
try {
List<Map<String, Object>> list = dao.select(param.getSql());
for (Map<String, Object> map : list) {
for (Map.Entry<String, Object> entry : map.entrySet()) {
if (entry.getKey().toLowerCase().contains("date")) {
entry.setValue(entry.getValue().toString());
}
}
}
return RestResultDTO.success(list);
} catch (Exception e) {
return RestResultDTO.error(500,e.getMessage());
}
}
dao层
List<Map<String, Object>> select(@Param("sql") String sql);
xml层
<select id="select" resultType="java.util.Map" statementType="STATEMENT">${sql}</select>