
Mybatis
文章平均质量分 91
FeelTouch Labs
技术架构、人工智能、区块链与密码学专家
展开
-
Mybatis plus相比传统Mybatis手写SQL的好处
这样做隐患更大,因为我们上面的select语句是手写的sql ,字段都是手写的,因此如果需求改变了,订单表增加了几个字段,那么这些手写的select语句的sql就得从头到尾全都改一遍,否则这些sql查询出的实体数据,再执行updateByPrimaryKey方法就会把新增的字段修改为空。注:将sql写在xml文件里的方式同理 然后发送通知这个需求基本就能实现了,写个定时任务每间隔多久运行一次,先取出待推送的订单,然后调用逐一调推送方法,再修改订单状态。商品表和订单表是一对多的关系,一个商品可以有多个订单。转载 2023-10-08 23:42:14 · 210 阅读 · 0 评论 -
Mybatis原理分析--动态生成Sql原理
好文:https://www.jianshu.com/p/ec40a82cae28本文将带你分析Mybatis是如何动态生成SQL。首先,会根据源码分析框架初始化时xml文件的加载、解析、缓存过程。着重介绍 xml的解析过程 和 使用解析的结果,最后列举实例和对照源码DeBug分析:当DAO接口调用时标签的解析、参数的创建、SQL的生成过程,并总结整个流程。 数据的处理 My...转载 2020-03-02 13:36:40 · 1532 阅读 · 0 评论 -
Mybatis原理分析系列---关键点分析
什么MybatisMybatis工作构成Mybatis一些关键知识点1,mybatis加载mappers有几种方式?哪种优先级最高?四种。主要有package、resource、url、class 四种。可以看出package优先级最高。<mappers> <!--第一种做法--> <!--<pa...原创 2020-02-24 01:25:24 · 611 阅读 · 0 评论 -
Mybatis动态传入order by 参数的时候不生效的问题解决方案
默认情况下,使用#{}格式的语法会导致MyBatis创建预处理语句属性并以它为背景设置安全的值(比如?)。这样做很安全,很迅速也是首选做法,有时你只是想直接在SQL语句中插入一个不改变的字符串。比如,像ORDER BY,你可以这样来使用:ORDER BY ${columnName}这里MyBatis不会修改或转义字符串。重要:接受从用户输出的内容并提供给语句中不变的字符串,这样做是不安全的。...转载 2019-01-30 00:38:45 · 2438 阅读 · 0 评论 -
MyBatis SqlSession原理梳理
工作中,需要学习一下MyBatis sqlSession的产生过程,翻看了mybatis-spring的源码,阅读了一些mybatis的相关doc,对mybatis sqlSession有了一些认知和理解,这里简单的总结和整理一下。 首先, 通过翻阅源码,我们来整理一下mybatis进行持久化操作时重要的几个类: SqlSessionFactoryBuilder:build方...转载 2018-08-29 01:04:14 · 1310 阅读 · 0 评论 -
Mybatis Mapper动态代理的原理解析
前言在开始动态代理的原理讲解以前,我们先看一下集成mybatis以后dao层不使用动态代理以及使用动态代理的两种实现方式,通过对比我们自己实现dao层接口以及mybatis动态代理可以更加直观的展现出mybatis动态代理替我们所做的工作,有利于我们理解动态代理的过程,讲解完以后我们再进行动态代理的原理解析,此讲解基于mybatis的环境已经搭建完成,并且已经实现了基本的用户类编写以及用户类的...转载 2020-01-19 23:23:50 · 538 阅读 · 0 评论 -
Mybatis如何返回insert后的主键值
不返回自增主键的方法<insert id="insertFollowInfo" > INSERT INTO follow_info(podcast_id,g_user_id,follow_time,create_time,update_time) VALUES(#{podcastId},#{gUserId},#{followTime},#{createTime},#{u...原创 2019-12-15 23:11:44 · 983 阅读 · 0 评论