MyBatis
文章平均质量分 65
甜瓜瓜哥
这个作者很懒,什么都没留下…
展开
-
MyBatis中的分页原理
请注意,使用 ROWID 分页的一个前提是,表中的行不会在分页查询的过程中发生删除或插入。在大型分页查询的情况下,可能会考虑使用其他优化策略,例如基于游标的分页。需要注意的是,逻辑分页是在查询结果集中进行截取的,因此可能会影响性能,特别是在返回大量数据时。在应用中,可以通过计算 :start_rowid 和 :end_rowid 的值来实现分页,这样就可以在每次查询时指定要返回的行范围。逻辑分页是指在数据库中获取所有符合条件的记录,然后在内存中进行分页操作,而不是通过数据库的。原创 2023-11-27 20:43:08 · 409 阅读 · 0 评论 -
使用MyBatis的好处
MyBatis是一种用于Java语言的持久层框架,它是为了简化数据库访问操作而设计的。使用MyBatis有多个优点。总之,MyBatis是一种强大且灵活的持久层框架,适用于各种规模的Java应用程序,并且可以帮助开发人员更轻松地进行数据库操作,提高应用程序的性能和可维护性。原创 2023-07-22 15:10:27 · 271 阅读 · 0 评论 -
Mybatis-plus中分页的底层原理
总结起来,Mybatis-plus在分页底层使用了MyBatis的RowBounds对象来实现分页功能,并提供了便捷的方式来使用分页功能,简化了分页查询的代码编写。原创 2023-07-20 17:33:02 · 1308 阅读 · 0 评论 -
MyBatis使用注解或mapper的两种方式
在这种方式下,你可以在实体类或接口的方法上使用注解,来指定 SQL 语句的内容和参数映射关系。例如,你可以使用 @Select 注解来指定联表查询的 SQL 语句,并使用 @Results 和 @Result 注解来指定结果映射规则。对于联表查询,你可以使用 SQL JOIN 语句来关联多个表,并使用 MyBatis 提供的结果映射机制将查询结果映射到相应的对象中。在 MyBatis 的配置文件中,将注解映射接口添加为映射器(Mapper),以便 MyBatis 可以找到和解析接口中的注解。原创 2023-07-11 11:21:38 · 544 阅读 · 0 评论 -
SpringBoot中集成Mybatis所需的配置或注解
在Spring Boot应用程序的入口类上添加@MapperScan注解,指定MyBatis Mapper接口的扫描路径。在application.properties或application.yml文件中,设置数据库连接相关的属性。在需要使用数据库操作的地方,使用@Autowired注解将Mapper接口注入到相应的类中。在您的项目中创建MyBatis的映射文件(XML文件)和相应的实体类。文件中,添加Spring Boot和MyBatis的依赖项。创建一个Java接口,用于定义与数据库交互的方法。原创 2023-07-05 16:39:01 · 177 阅读 · 0 评论 -
Mapper和Dao的区别
Mapper模式主要用于对象-关系映射,将对象和数据库表之间进行映射,实现数据的读取和写入。而DAO模式主要用于数据访问层,将业务逻辑与数据访问逻辑分离,提供一组接口或类来定义对数据的增删改查等操作。而DAO模式主要用于数据访问层,将业务逻辑与数据访问逻辑分离,提供一组接口或类来定义对数据的增删改查等操作。原创 2023-06-08 17:25:26 · 4509 阅读 · 0 评论 -
使用MyBatis的注意事项
MyBatis是一个优秀的持久层框架,它简化了数据库访问的过程,并提供了灵活的映射机制,可以将数据库记录映射为Java对象。原创 2023-06-04 15:46:41 · 115 阅读 · 0 评论 -
Mybatis里面的缓存机制
一级缓存是SqlSession级别的一个缓存,也叫本地缓存。因为每一个用户在执行查询的时候,都需要使用SqlSession来执行。为了避免每一次都去查询数据库,Mybatis把查询出来数据缓存到SqlSession的本地缓存里面,后续的SQL如果在命中缓存的情况下,就可以直接从本地缓存去读取这样一个数据。如果想要去实现跨SqlSession级别的一个缓存,那么一级缓存是无法做到的。原创 2023-05-31 16:48:02 · 53 阅读 · 0 评论 -
Mybatis是如何进行分页的
对于任何的ORM框架,分页的时间逻辑无外乎两种,不管怎么包装,最终给到开发者的只是使用上的一个差异而已。原创 2023-05-31 16:24:33 · 353 阅读 · 0 评论 -
MyBatis中#{}和${}的区别
一个小的细节不注意可能会造成巨大的损失,比如说现在还有会有一些网站会出现SQL注入导致信息泄露一些问题。参考资料【Mybatis面试系列】B站回答最好的Mybatis面试回答,轻松搞定面试官!原创 2023-05-31 16:00:51 · 42 阅读 · 0 评论 -
MybatisPlus相比Mybatis的优势
参考资料:【面试精选】1分钟了解MybatisPlus对比Mybatis的优势原创 2023-04-28 22:15:29 · 593 阅读 · 0 评论 -
MyBatis插件运行原理
Mybatis的插件相当于拦截器,我们可以编写针对ParameterHandler、ResultSetHandler、StatementHandler、Executor这4种接口的插件, Mybatis通过动态代理,为需要拦截的接口生成代理对象以实现接口方法拦截功能,每当执行这4种接口对象的方法时,先判断执行的方法是否需要代理的方法,如果是则执行插件类的增强方法,进行方法的拦截处理。(面向切面编程的思想)执行器,执行增删改查。对sql参数进行处理。对结果集对象进行处理。对sql语句进行处理。原创 2023-04-23 09:46:53 · 448 阅读 · 0 评论 -
LambdaQueryWrapper用法
LambdaQueryWrapper是一种针对Mybatis Plus代码重构而开发出来的轻量级查询条件封装工具(QueryWrapper),其实质是一种构建MyBatis Plus条件构建器。它可以让查询条件(where)更容易理解,更简洁,易于将常见条件各自封装成一个方法,并且只有一个方法,以方便调用。它可以简化查询参数的传递,并且可以有效地实现Mybatis Plus中常用的查询方法。原创 2023-04-16 23:43:07 · 3537 阅读 · 0 评论 -
Mybatis和hibernate的区别
Hibernate与MyBatis都是ORM(Object Relational Mapping)框架(对象关系映射框架),都是可以通过SessionFactoryBuilder由XML配置文件生成SessionFactory,然后由SessionFactory生成Session,最后由Session来开启执行事务和SQL语句。其中SessionFactoryBuilder, SessionFactory, Session的生命周期都是差不多的。原创 2023-04-13 11:03:07 · 1037 阅读 · 0 评论