MyBatis
文章平均质量分 67
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO为数据库中的记录。
加贝力口贝
这个作者很懒,什么都没留下…
展开
-
一、预约挂号微服务模块搭建
hospital-manage:医院接口模拟端(已开发,直接使用)yygh-parent:根目录,管理子模块: common:公共模块父节点 common-util:工具类模块,所有模块都可以依赖于它 rabbit-util:rabbitmq业务封装 service-util:service服务的工具包,包含service服务的公共配置类,所有 service模块依赖于它 server-gateway:服务网关 model:实体类模块 service:ap原创 2023-05-20 21:24:53 · 1189 阅读 · 0 评论 -
HikariPool-1 - Exception during pool initialization.
HikariPool-1-池初始化期间出现异常。注意:driver和url的变化。如下图所示访问数据库正常。原创 2022-08-17 00:08:29 · 3846 阅读 · 0 评论 -
No qualifying bean of type ‘com.atguigu.yygh.hosp.mapper.HospitalSetMapper‘ available: expected at l
如上图所示 HospitalSetMapper 是一个 interface,HospitalSetMapper 的实现类会动态的创建出来,而目前它找不到动态创建出来的实现类,所以会报错。原创 2022-08-16 19:13:41 · 793 阅读 · 1 评论 -
‘com.baomidou.mybatisplus.extension.service.IService‘ cannot be inherited with different type argume
当我们使用mybatis-plus时,service接口继承这个IService接口,然后Service实现类继承ServiceImpl时出现上图这种情况,并且当我们鼠标停留在红色的波浪线上时,会出现下面的语句。把下图两个地方改为一致问题解决。...原创 2022-08-16 17:49:22 · 12303 阅读 · 3 评论 -
六、MyBatis-Plus 条件构造器和常用接口
Wrapper : 条件构造抽象类,最顶端父类AbstractWrapper : 用于查询条件封装,生成 sql 的 where 条件QueryWrapper : 查询条件封装UpdateWrapper : Update 条件封装AbstractLambdaWrapper : 使用Lambda 语法LambdaQueryWrapper :用于Lambda语法使用的查询WrapperLambdaUpdateWrapper : Lambda 更新封装Wrapper}...原创 2022-08-15 00:53:22 · 202 阅读 · 0 评论 -
五、MyBatis-Plus 删除与逻辑删除
application.properties 加入以下配置,此为默认值,如果你的默认值和mp默认的一样,该配置可无。,将对应数据中代表是否被删除字段状态修改为“被删除状态”,之后在数据库中仍旧能看到此条数据记录。注意:被删除前,数据的deleted 字段的值必须是 0,才能被选取出来执行逻辑删除的操作。测试后发现,数据并没有被删除,deleted字段的值由0变成了1。MyBatis Plus中查询操作也会自动添加逻辑删除字段的判断。,将对应数据从数据库中删除,之后查询不到此条被删除数据。...原创 2022-08-15 00:42:14 · 468 阅读 · 0 评论 -
四、MyBatis-Plus 查询
map中的key对应数据库中的列名。如:数据库user_id,实体类是userId,这时map的key需要填写user_id。当指定了特定的查询列时,希望分页结果列表只返回被查询的列,而不是很多null值。MyBatis Plus自带分页插件,只要简单的配置即可实现分页功能。测试selectMapsPage分页:结果集是Map。完成了动态sql的foreach的功能。测试:最终通过page对象获取相关数据。配置类中添加@Bean配置。通过map封装查询条件。...原创 2022-08-15 00:35:55 · 1977 阅读 · 0 评论 -
三、MyBatis-Plus 自动填充和乐观锁
执行更新时, set version = newVersion where version = oldVersion。注意:update时生成的sql自动是动态sql:UPDATE user SET age=?WHERE id=?项目中经常会遇到一些数据,每次都使用相同的方式填充,例如记录的创建时间,更新时间等。当要更新一条记录的时候,希望这条记录没有被别人更新,也就是说实现线程安全的数据更新。我们可以使用MyBatis Plus的自动填充功能,完成这些字段的赋值工作。更新时,带上这个version。...原创 2022-08-15 00:26:56 · 622 阅读 · 0 评论 -
二、MyBatis-Plus 主键策略
首先是一个符号位,1bit标识,由于long基本类型在Java中是带符号的,最高位是符号位,正数是0,负数是1,所以id一般是正数,最高位是0。雪花算法是由Twitter公布的分布式主键生成算法,它能够保证不同表的主键的不重复性,以及相同表的主键的有序性。41bit时间截(毫秒级),存储的是时间截的差值(当前时间截 - 开始时间截),结果约等于69.73年。10bit作为机器的ID(5个bit是数据中心,5个bit的机器ID,可以部署在1024个节点)。要想影响所有实体的配置,可以设置全局主键配置。....原创 2022-08-15 00:17:36 · 1090 阅读 · 0 评论 -
一、MyBatis-Plus 入门
MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。润物无声只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑。效率至上只需简单配置,即可快速进行 CRUD 操作,从而节省大量时间。丰富功能热加载、代码生成、分页、性能分析等功能一应俱全。............原创 2022-08-15 00:09:28 · 133 阅读 · 0 评论 -
IDEA中mybatis的XML文件格式化问题
在使用IDEA编辑完mybatis的xml文件的时候,为了代码的整洁我们往往会通过快捷键(Ctrl+Alt+L)等方式进行代码的格式化排版,然而当我们用快捷键的时候xml文件中的代码并未生效。SQL Dialect未指定将图中标记处设置为对应的数据库,让idea识别你的sql,然后ctrl+alt+L格式化即可...原创 2022-06-10 01:25:32 · 9034 阅读 · 3 评论 -
MyBatis中使用的一些特殊符号标识(大于等于、小于等于、等于、不等于)
文章目录方法一:使用特殊转义字符方法二:使用<![CDATA[ ]]>符号在mybatis中sql是写在xml映射文件中的,如果sql中有一些特殊字符的话,在解析xml文件的时候就会被转义,如若不希望被转义,那该怎么办呢?方法一:使用特殊转义字符符号小于小于等于大于大于等于和单引号双引号原符号<<=>>=&’"替换符号<<=>>=&a原创 2022-05-30 17:23:32 · 2983 阅读 · 0 评论