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>