文章目录1、OGNL表达式介绍1、#{}与${}的区别2、parameterType 配置参数2.1、 使用说明2.2、注意事项3、传递 pojo 包装对象3.1、编写 QueryVo3.2、编写持久层接口3.3、持久层接口的映射文件2.4、测试包装类作为参数的方法4、配置实体类别名,替换全限定类名 1、OGNL表达式介绍mybatis框架在获取参数时使用的是OGNL表达式获取。  OGNL全拼            
                
         
            
            
            
            上面getSqlSession()基于下面的工具类            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-07-08 13:35:21
                            
                                1117阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            代码 package com.wt.utils; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessi            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-07-14 11:27:56
                            
                                249阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            P20MyBatis获取参数值的两种方式(重要)一.什么叫做获取取参数值的两种方式以后在我们开发是方向B/S系统,然后我们现在要做的任务通过浏览器/页面/视图 收集用户输入的一些数据,然后把这些数据提交到服务器中,在服务器中获取完之后,传输到serevt处理业务逻辑,在传输到dao,在dao实现类中,要把这些数据拼接到sql语句中,然后最终执行sql语句,这时候就可以把用户相关的数据保存到数据库中            
                
         
            
            
            
            文章目录缓存一级缓存二级缓存 缓存一级缓存MyBatis使用SqlSession对象表示一次数据库的会话,MyBatis会话级别的数据缓存称为一级数据缓存,简称一级缓存。默认启用。SqlSession是MyBatis的一个门面接口,SqlSession将它的工作交给了Executor执行器这个角色来完成,负责完成对数据库的各种操作。当创建了一个SqlSession对象(DefaultSqlSes            
                
         
            
            
            
            前置博客:MyBatis原理分析之获取SqlSessionFactory,本篇是续篇。获取sqlsession主要是通过SqlSessionFactory的几个重载方法            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-06-13 10:33:54
                            
                                315阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            当我们需要创建 SqlSession 对象并需要执行 SQL 语句时,这时候 MyBatis 才会去调用 dataSource 对象来创建java.sql.Connection对象。也就是说,java.sql.Connection对象的创建一直延迟到执行SQL语句的时候 在这三种数据源中,我们一般采用的是 POOLED 数据源(很多时候我们所说的数据源就是为了更好的管理数据库连接,也就是我们所说的            
                
         
            
            
            
            1、实例代码在实例搭建文章中,通过 SqlSession 对象查询数据,可乐写了两种方法。①、常规的需要我们拼接 statement 方式;②、xxxMapper.interface 接口代理方式; 对应下面两种方法: //根据id查询person表数据 @Test public void test ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-08-16 17:28:00
                            
                                185阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            MyBatis之SqlSession介绍​            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2017-01-12 16:19:01
                            
                                10000+阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            @TOC聊聊Mybatis的SqlSessionSqlSessionFactory接口是用来创建SQLSession的,它是一个接口,默认实现类是DefaultSqlSessionFactory,DefaultSqlSessionFactory中创建SqlSession有两种方式:通过连接信息创建SqlSession一种是调用openSessionFromConnection()来获取SqlSes            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                            精选
                                                        
                            2022-08-24 11:41:51
                            
                                430阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. #{}和${}的区别#{}是占位符,预编译处理;${}是拼接符,字符串替换,没有预编译处理。Mybatis在处理#{}时,#{}传入参数是以字符串传入,会将SQL中的#{}替换为?号,调用PreparedStatement的set方法来赋值。Mybatis在处理${}时,是原值传入,就是把{}替换成变量的值,相当于JDBC中的Statement编译变量替换后,#{} 对应的变量自动加上单引号            
                
         
            
            
            
            1、mybatis3中的通过openSession()方法打开的sqlsession,它的事务默认是关闭的,所以进行数据库完成操作之后,要记得commit(),也可以添加openSession(boolean autoCommit)是否提交来配置。2、如果用的是注解的话,就需要commit()了首先...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-05-11 11:11:23
                            
                                92阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Mybatis映射文件中select元素Select元素来定义查询操作Id:唯一标识符。用来引用这条语句,需要和接口的方法名一致parameType:参数类型。可以不传,MyBatis会根据TypeHandler自动推断resultTpye:返回值类型。别名或者全名,如果返回的是集合,定义集合中元素的类型。不能和resultMap同时使用。(如果返回的是一个集合,要写集合中元素的类型)使用list            
                
         
            
            
            
            一、创建SqlSessionFactory和SqlSession对象 1.1.什么是SqlSessioFactory? 1.2.什么是SqlSession? 1.3.SqlSessionFactory和SqlSession实现过程(源码分析) 1.4生命周期 1.1什么是SqlSessionFact            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-01-02 19:51:00
                            
                                2146阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            MyBatis 核心配置文件properties 定义属性及读取属性文件settings 设置运行时行为typeAliases 类型别名定义单个别名批量定义别名typeHandlers 类型处理器Plugins(后续有文章专门介绍这个)Environments 运行环境databaseIDProvider 定义数据库厂商mappers 加载映射文件mapper resource=" "mappe            
                
         
            
            
            
            mybatis的缓存主要是分为两种:一级缓存和二级缓存:一级缓存:一直开启,不能关闭,默认是session级别的,但是可以设置成statement级别。session级别:表现为---MyBatis执行SQL语句之后,这条语句就是被缓存,以后再执行这条语句的时候,会直接从缓存中拿结果,而不是再次执行SQL。但是在两个相同的查询之间,如果当前数据被修改,会进行两次查询。作用域是SqlSession级            
                
         
            
            
            
            /** * @author Clinton Begin */public class DefaultSqlSession implements SqlSession            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-08-25 17:11:31
                            
                                127阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在 MyBatis 中,SqlSession 是其核心接口。在 MyBatis 中有两个实现类,DefaultSqlSession 和 SqlSessionManager。SqlSess            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-02-14 11:32:47
                            
                                228阅读
                            
                                                                             
                 
                
                                
                    