MyBatis
文章平均质量分 60
zjw_rp
这个作者很懒,什么都没留下…
展开
-
MyBatis分页插件
在查询功能之前使用PageHelper.startPage(int pageNum, int pageSize)开启分页功能pageSize:每页显示的条数pageNum:当前页的页码index:当前页的起始索引,公式 index=(pageNum-1)*pageSizecount:总记录数totalPage:总页数= 0){首页 上一页 2 3 4 5 6 下一页 末页分页插件的使用步骤1. 添加依赖。原创 2023-01-06 20:45:17 · 75 阅读 · 1 评论 -
MyBatis逆向工程
正向工程:先创建Java实体类,由框架负责根据实体类生成数据库表。逆向工程:先创建数据库表,由框架负责根据数据库表,反向生成如下资源:Java实体类Mapper接口Mapper映射文件只能针对单表能够方便操作,如果是多表需要自己去写sql语句,自己去写映射关系。 解决其他数据库中存在相同的表名,mybatis自动生成时串库的问题 加上属性:原创 2023-01-06 15:44:04 · 169 阅读 · 0 评论 -
collection处理一对多的映射关系
方式一 collection属性 方式二 分步查询原创 2023-01-05 21:59:50 · 344 阅读 · 0 评论 -
多对一映射处理&延迟加载
表和表有关系,所映射的实体类也要有关系表对应实体类,字段对应属性表里面一条数据对应一个实体类对象所以:对一对应一个对象,对多对应一个集合。 lazyLoadingEnabled:延迟加载的全局开关。当开启时,所有关联对象都会延迟加载 aggressiveLazyLoading:当开启时,任何方法的调用都会加载该对象的所有属性。原创 2023-01-05 11:37:17 · 90 阅读 · 0 评论 -
MyBatis处理字段名和属性名不一致的情况
resultMap:设置自定义的映射关系id:唯一标识type:处理映射关系的实体类的类型标签:id:处理主键和实体类中实现的映射关系result:处理普通字段和实体类中属性的映射关系column:映射关系中的字段名,必须是sql查询出某个字段property:设置映射关系中的属性的属性名,必须是处理的实体类类型中的属性名映射文件原创 2023-01-05 10:08:34 · 235 阅读 · 0 评论 -
特殊SQL执行 模糊查询&批量删除&动态设置表名& 获取自增主键
1.模糊查询模糊查询,查询的结果条数不固定,不确定查询出来的数据有几条,方法返回值用list集合获取。#{}对应的是占位符赋值,解析的时候解析为一个?号,?号是在单引号里面是字符串的一部分,不会当做占位符解析。 #{}最终会被解析加上单引号,用的占位符值,自动加单引号。 useGeneratedKeys:表示当前添加功能使用了自增的主键keyProperty:将添加的数据自增主键为实体类类型的参数的属性赋值为什么不作为方法的返回值,因为增删改的返回值固定的,受影的行数。原创 2023-01-04 16:07:28 · 510 阅读 · 1 评论 -
MyBatis各种查询功能 list集合 &单行单列&map集合
若sql语句查询的结果为多条时,一定不能实体类类型作为方法的返回值,否则抛出异常 TooManyResultsException 。 . 查询总记录数等等单行单列(查询单个数据)查询的是一个单行单列数据,数据要转换为java中的哪一种类型,在把这种类型或者类型别名设置在resultType中。Mybatis中为java中常用的类型设置了类型别名 ,可以在Mybatis官方文档中了解。原创 2023-01-04 11:46:10 · 3153 阅读 · 0 评论 -
MyBatis获取参数值的两种方式
mybatis是面向接口编程,mapper接口没有实现类,调用mapper接口的方法,而方法是有参数的,因为没有实现类,所以mapper接口中的方法直接对应映射文件sql语句,所以现在sql语句写在映射文中的,所以要在映射文件中通过指定的方式(两种方式#{}/${})获取对应的方法参数。原创 2023-01-03 19:33:57 · 518 阅读 · 0 评论 -
优化MyBatis核心配置文件内容 / properties文件 / typeAliases设置别名 / 通过包名引入映射文件 / 文件的模板
就可以在当前核心配置文件中使用 ${key} 方式,来访问到所对应的value值。在resources创建的目录Directory不能在中间写 . 而是 /在mybatis范围之内只需要访问这个别名就可以访问到具体的类型。所以通过包来引入当前的映射文件,这样所有的包里面的映射文件都全部引入。要求:①映射文件所在的包和mapper接口所在的包名一致,②映射文件的名字和接口名字保持一致。类型别名:可以为每个具体的类型设置一个简短的名字,如有多个映射文件,要一个一个引入是有点麻烦的,原创 2023-01-02 19:31:26 · 128 阅读 · 0 评论 -
MyBatis删改查和封装SqlSession会话对象工具类减少代码重复
resultType结果类型:设置当前查询出来的数据转换为java类型(字段名和属性名一致)resultMap自定义映射:字段名和属性名不一致,需要用到自定义映射,或者一对多,多对一。查询功能:需要把当前查询出来的数据转换为一个java类型设置出来。两种属性不能同时设置。原创 2023-01-02 10:26:53 · 137 阅读 · 0 评论 -
MyBatis测试添加功能
1. 加入依赖jar包等等 (mybatis,mysql,log4日记等等,和log4文件 2. 创建数据库表) 3. 创建实体类,类名要跟表名对应。4. 创建核心配置文件。5. 创建接口,接口名字要和映射文件名字相同。6. 创建映射文件,和接口名字保持一致。7. 测试类原创 2023-01-01 16:28:45 · 154 阅读 · 0 评论 -
搭建Mybatis核心配置文件和mapper接口和映射文件
核心配置文件主要用于配置连接数据库的环境以及MyBatis的全局配置信息。一个mapper接口对应一个映射文件中的sql语句 映射文件命名规则:和mapper接口最好同名。mybatis一些对应关系:一张表对应一个实体类对应当前mapper接口对应映射文件。mapper接口的方法对应的是映射文件中的sql语句。映射文件的内容,去官方文档可以找到相关的内容复制。保证两个一致:①映射文件的namespace要mapper接口全类名保持一致②mapper接口中的方法名要和映射文件中的sql的id保持一致原创 2023-01-01 15:38:32 · 978 阅读 · 0 评论 -
搭建MyBatis开发环境搭建
创建maven工程 ①打包方式:jar ②引入依赖原创 2023-01-01 13:17:12 · 73 阅读 · 0 评论 -
MyBatis的下载和和其他持久层技术的比较
① 轻量级,性能出色② SQL 和 Java 编码分开,功能边界清晰。Java代码专注业务、SQL语句专注数据 (sql语句写在xml中,java代码是和xml分开的,进行sql语句维护, 只需要在xml文件中修改,对java代码没影响。java代码专注业务,sql语句专注于数据)。MyBatis是目前市场上最流行的持久层框架。原创 2023-01-01 10:33:01 · 89 阅读 · 0 评论