----mybatis
Syd丶
昨天,略去。今天,珍惜。明天,争取。对的,坚持。错的,放弃。
展开
-
MyBatis排序时使用order by 动态参数时需要注意,用$而不是#, #{}和${}的区别以及order by注入问题
ORDER BY ${columnName}这里MyBatis不会修改或转义字符串。重要:接受从用户输出的内容并提供给语句中不变的字符串,这样做是不安全的。这会导致潜在的SQL注入攻击,因此你不应该允许用户输入这些字段,或者通常自行转义并检查。#{}相当于jdbc中的preparedstatement${}是输出变量的值简单的说就是#{}传过来的参数带单引号''转载 2017-05-23 16:18:28 · 14076 阅读 · 1 评论 -
一个困扰了我三天的SQL优化问题。(多条数据取最近的数据)
由于优化的方向不对,一个SQL困扰了我好几天,物化视图什么之类的,全部都试过了,还是没有解决。今天,在看这个问题的时候,灵光一现,咦,好像是这里有问题,然后改了一下,终于解决了。这个SQL,从最初的16秒,后面换了各种方法,有180秒,150秒,60多秒,试过了各种SQL,终于,优化到了0.3秒。好了,现在说下问题。 这个SQL总共涉及了6张表,其实最主要的是做数据的统计。原创 2017-06-12 16:30:46 · 521 阅读 · 0 评论