大纲配置的修改代码的修改Main.java文件所在包下新增org.example.model包新增org.example.mapper包单元测试我们用最简单的方法组织出一个Mybatis应用项目。为了后续构建更符合日常开发环境的项目,我们对项目的目录结构做了调整,并引入了单元测试组件JUnit。配置的修改在resources目录下,将mybatis相关的配置 ......
15
0
0
2024-11-14
大纲数据库Mybatis目录结构配置代码代码/配置结构配置结构依赖库配置SQL配置Mybatis配置数据库配置SQL映射配置完整配置代码结构映射类Mybatis逻辑从 XML 中构建 SqlSessionFactory从 SqlSessionFactory 中获取 SqlSession通过mapper中的namespace和id执行SQL完整逻辑和代码参考资 ......
15
0
0
2024-11-14
package org.example.model; public class AllType { public int getInfo_int() { return info_int; } public void setInfo_int(int info_int) { this ......
13
0
0
2024-11-13
typeAliases我们还可以使用typeAliases定义一些值,让SQL Mapper XML中引用。 比如我们所有的查找操作,返回的都是"org.example.model.AllType"。在SQL Mapper XML(AllTypeMapper.xml)中如下使用。<select id="findAll" resultType="org. ......
14
0
0
2024-11-13
大纲​AS绑定法测试代码resultMap法​测试代码参考资料在《0基础学习Mybatis系列数据库操作框架——增删改操作》的更新操作中,我们定义的SQL Mapper是<update id="updateElems"> update all_type set info_tint = #{info_tint}, info_sint = ......
14
0
0
2024-11-13
大纲Java模型类定义类型处理器配置文件和类型绑定和字段绑定resultMap中绑定Mapper代码测试类型对应关系表总结参考资料我们有时候会在数据库中放入一个扩展字段,用于保存在表设计时尚未考虑到的、未来会加入的一些信息。这个字段我们一般使用字符串存储,格式是个Json。这样后续就可以很方便进行序列化和反序列化。 本文主要讲解如何自定义类型处理器,让Myb ......
15
0
0
2024-11-13
大纲依赖缓存器类配置测试总结参考资料Mysql这类的数据库,其查询性能往往不能100%扛住我们业务请求量。于是我们一般都会在查询数据库之前,先查询下缓存。如果缓存存在,则直接使用缓存中数据;如果缓存失效,则读取数据库,并将数据记录到缓存中。Mybatis有缓存机制,但是它只是本地缓存。在分布式环境下,这套机制就有很大的限制,于是本文我们将缓存内容保存在Red ......
15
0
0
2024-11-13
代码实现自定义工厂只需要继承org.apache.ibatis.reflection.factory.DefaultObjectFactory,并覆盖下面两个方法public <T> T create(Class<T> type); public <T> T create(Class<T> type, Lis ......
16
0
0
2024-11-13
1 简介MyBatisMyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的POJOs(Plain Ordinary Java Object,普通的 Java对象) ......
69
0
0
2024-09-05
简介MyBatis框架的核心功能其实不难,无非就是动态代理和jdbc的操作,难的是写出来可扩展,高内聚,低耦合的规范的代码。上图分析总结: 1、mybatis的配置文件有2类mybatisconfig.xml,配置文件的名称不是固定的,配置了全局的参数的配置,全局只能有一个配置文件。Mapper.xml 配置多个statemement,也就是多个sql,整个 ......
183
0
0
2024-07-27
Mybatis面试详解1、什么是 Mybatis?2、Mybaits 的优点:3、MyBatis 框架的缺点:4、MyBatis 框架适用场合:5、MyBatis 与 Hibernate 有哪些不同?6、#{}和${}的区别是什么?7、当实体类中的属性名和表中的字段名不一样 ,怎么办 ?8、 模糊查询 like 语句该怎么写?9、通常一个 Xml 映射文件, ......
197
0
0
2024-07-25
MyBatisPlus的SQL注入器一、介绍在前些天的时候,我需要写一个存在则更新的sql语句,这以前我有记录过。MySQL插入重复后进行覆盖更新 | 半月无霜 (banmoon.top)但以前我是在mapping.xml文件中,自己手动拼出来的。虽然可以实现,但真的好麻烦,每个实体都要这样写吗?我不,我去看了MyBatis plus的BaseMapper是 ......
333
0
0
2024-06-13
mybatis plus简介来自官方对于mybatis plus的介绍:MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。其支持以下特性:无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接 ......
324
0
0
2024-05-29
业务场景:根据业务需要,这里将角色按照数据范围做权限限定,提供三级权限分别为:1、全部:可以查看所有的数据2、自定义:按照组织架构,可以查看当前所匹配的组织架构数据3、个人:仅能查看由自己创建,或者数据流转到自己节点的数据思路:1、定义Mybatis拦截器DataScopeInterceptor,用于每次拦截查询sql语句,附带数据范围权限sql条件2、定义 ......
176
0
0
2024-05-11
1、需要手动建表,如T_PRI_USER2、新建配置文件generator.properties:#工程src路径 project = E\:/java/eclipseVillage/icity-yuntv/src #工程存放mapper.xml路径 resource = E\:/java/eclipseVillage/icity-yuntv/reso ......
174
0
0
2024-05-09