首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MyBatis-Plus(实用篇)

    2、IService接口API 封装IService接口,进一步封装CRUD采用get查询单行、remove删除、list查询集合、page分页前缀命名方式 IService接口,增删改返回是否操作成功的...单个get,集合list getOne方法,多个抛出异常,第二个参数throwEx设置为false则获取第一条数据 查询记录数:count 分页查询:page 集合查询:list listObjs方法,...= userMapper.update(null, updateWrapper); System.out.println("result = " + result); } 四、扩展功能 1、链式查询与修改...> page参数自动分页时候,查询总条数COUNT(*)时候会将left join去掉,也就是只查主表的数据 此时如果有副表的字段作为查询条件会报错:Unknown column ‘xxx’ in ‘where...clause’(主表找不到xxx字段) // 情况1:如果查询条件中有address的字段,比如模糊查询地址名称 // 情况2:如果查询条件的字段,两个表都有,这里会有问题 // 自动分页的查询count

    1.3K10

    简单理解 PHP 框架可能产生的安全问题

    的实现为例, 代码的大体逻辑是将 update 的 set 部分拼接好然后调用增删改查都可用的 buildwhere, 构造 where 语句, 然后进行 sql 执行。...function insert(array $data = [], $replace = false, $getLastInsID = false, $sequence = null){ // 分析查询表达式...注入 一些可能导致注入的情况总结 因为框架要扩展各种各样的函数,会出现各种复杂的情况,很容易导致注入漏洞的产生. 1、order by 字段 因为传入的是表名,导致一般单引号,双引号的防御失效, 参考...$data; $result = file_put_contents($filename, $data); if ($result) { isset($...,则导致任意文件包含 总结 本文只是列一些框架的常见组件可能存在的问题,并没有很细致的进行分析,可能不全面,希望和师傅们一起学习,如果文章中出现了错误请师傅们指正.

    91510

    MySQL在REPEATABLE READ隔离级别下解决幻读了吗?

    这意味着在同一个事务内,如果多次执行非锁的Select语句,他们彼此的结果是一致 对于加锁读、更新、删除语句,加锁取决于语句是否使用了唯一索引作为查询条件还是范围类型查找条件 如果是使用了唯一查询条件...,那么后执行的事务在索引的间隙处是无法执行的,而非间隙处能执行成功 能达到第2点的效果,实际上是MySQL利用了next-key locking,从而保证不会出现幻读 经验证,如果事务2插入的age值是...这个例外会导致有一个异常情况的出现: 如果更新了表中的某些行,SELECT会查到更新行的最新版本,也会查到任意行的老版本;那么如果其它会话同时更新了相同的表,这种异常就会使得在原来的事务内能够看到之前从未存在的数据...测试3:在测试2的基础上调整事务2insert的执行顺序 时序 事务1 事务2 1 begin begin 2 mysql> select * from test where age=100;Empty...age=100;Empty set (0.00 sec) 6 mysql> update test set name="t6_update" where age=100;Query OK, 1 row

    79011
    领券