Mybatis小结
程序员文章站
2022-08-21 15:34:27
Mybatis Mybatis的介绍 1. Mybatis是持久层层框架,是半ORM(对象关系映射)框架. 2. 使用Mybatis有两类配置文件 核心配置文件: mybatis Config.xml 映射配置文件: 与接口相对应的xml文件 3. 核心的API: SqlSessionFactory ......
mybatis
mybatis的介绍
1. mybatis是持久层层框架,是半orm(对象关系映射)框架. 2. 使用mybatis有两类配置文件 * 核心配置文件: mybatis-config.xml * 映射配置文件: 与接口相对应的xml文件 3. 核心的api: * sqlsessionfactorybuilder : 构建者模式 * sqlsessionfactory : 工厂模式 * sqlsession 4. 执行的流程 1. 读取配置文件 2. 使用sqlsessionfactorybuilder的builder方法获取sqlsessionfactory 3. 使用sqlsessionfactory的opensession方法获取sqlsession 4. 使用sqlsession的getmapper方法获取接口的代理对象 5. 测试方法即可 5. 了解mybatis底层使用的知识点: * 反射 * 构建者模式,工厂模式,代理模式 * xml配置文件的相关操作
mybatis的基本开发
1. 规范: * xml配置文件中的namespace与接口的全限定类名相同. * 动态标签的id与接口的方法名一致 * xml的配置文件和接口的包名与接口名一致 2. sql语句的写法: * $ : 字符串拼接符,简单数据类型使用${value},复杂类型就是${属性} * # : 占位符 3. 插入的主键返回: <selectkey keyproperty="" keycolumn="" resulttype="" order="after"> select last_insert_id() </selectkey> 4. 动态sql: 1. <sql id=""></sql> : sql片段 2. <if test=""> : if判断 3. <where> : 添加条件,自动添加 where 1 = 1并且去掉拼接条件后的第一个and 4. <foreach collection="" open="" close="" item="" separator=""> : 遍历集合 5. sql的输入输入参数的传递: * 输入参数: parametertype * 输出参数: resulttype, resulemap 6. 核心配置文件: * <properties> : 加载外部properties资源文件 * <typealises> : 起别名 * <mappers> : 加载映射的xml配置文件 * <enviroments> : 配置数据库的连接信息 1. 事务 : jdbc事务 2. 连接池 : * pooled : 连接池 * unpooled : 每次创建新的 * jndi 3. mybatis默认是不自动提交的,可以在opensession中传入true开启自动提交 7. 关联查询(一对多,多对多) * 使用resultmap来进行相关的查询: 1. <association javatype=""> : 单个pojo 2. <collection oftype=""> : 集合 8. 延迟加载(需要在核心配置文件中开启延迟加载的开关) 9. mybatis的缓存: * 一级缓存: sqlsession * 二级缓存: sqlsessionfactory(需要开启二级缓存的开关) 10. 注解开发: * @insert * @select * @update * @delete * @results * @result * @resultmap * @one * @money * @cachenamespace
上一篇: 对用户输入内容进行字数提示功能
下一篇: python使用布隆过滤器的实现示例