参考博客 IDEA 插件 CodeGlance代码地图Translation 翻译插件(CTRL + SHIFT+ Y)Rainbow Brackets 彩虹括号Grep Console 日志颜色Statistic代码统计Markdown Navigator idea 内嵌 markdown编辑器RestfulToolkit 快速查询项目接口GsonFormat JSON字符串快速转换为Java类(类似ge
使用fluent mybatis可以不用写具体的xml文件,通过java api可以构造出比较复杂的业务sql语句,做到代码逻辑和sql逻辑的合一。 不再需要在Dao中组装查询或更新操作,在xml或mapper中再组装参数。 那对比原生Mybatis, Mybatis Plus或者其他框架,FluentMybatis提供了哪些便利呢? 需求场景
一、简介 映射器是 MyBatis 中最重要的文件,文件中包含一组 SQL 语句(例如查询、添加、删除、修改),这些语句称为映射语句或映射 SQL 语句。映射器由 Java 接口和 XML 文件(或注解)共同组成,它的作用如下。 定义参数类型 配置缓存 提供 SQL 语句和动态 SQL 定义查询结果和 POJO 的映射关
本节主要介绍 MyBatis 执行 SQL 语句的两种方式和它们的区别。MyBatis 有两种执行 SQL 语句的方式,如下: 通过 SqlSession 发送 SQL 通过 SqlSession 获取 Mapper 接口,通过 Mapper 接口发送 SQL 一、SqlSession发送SQL 有映射器之后就可以通过 SqlSession 发送 SQL 了。我们以 get
1 新建一个sprigboot项目 项目创建过程中,导入以下三个包 2 导入mybatis所需要的依赖 pom.xml </dependency> <!--mybatis-spring-boot-starter--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</a
mybatis 底层是基于 JDK 动态代理来实现 mapper 动态代理的,所以我们先来看看 JDK 动态代理。 1、回顾JDK 动态代理 1.1、定义接口 & 实现类 public interface Subject { int add(int x, int y); } public class RealSubject implements Subject { @Override public
Mybatis简介 MyBatis历史 MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁移到了Google Code。随着开发团队转投Google Code旗下,iBatis3.x正式更名为MyBatis。代码于2013年11月迁移到GithubiBatis一词来源于“internet”和“abat
目录逻辑删除修改表结构配置测试删除测试查询通用枚举修改表结构定义枚举配置修改实体类测试插入数据测试查询 逻辑删除 在系统开发中,有时删除操作需要实现逻辑删除,所谓逻辑删除就是将数据标记为删除,而并非真正的物理删除(非 DELETE 操作),在查询时需要携带状态条件,确保被标记的数据
动力节点 springboot教程 Created 星期四 17 二月 2022 springboot讲解分析项目案例顺序 如何创建一个springboot框架web项目 使用springboot框架集成springmvc 使用springboot框架的核心配置文件application.properties 使用springboot框架的核心配置文件application.yml
上一篇写了SpringBoot+Mybatis项目创建,以及注解方式实现查询功能。 这篇我们讲一下使用xml方式实现查询功能,以及一些常用的功能和配置。 这样,我们先创建一个Mapper接口,不写对应的xml,调用一下看会不会报错。 1. 创建TestMapper02 package com.example.mybatistest01.demo.mapp
解决字段名和属性不一致的情况: 数据库表单: java中对应类: 其中empName与emp_name不一致 1.为字段取别名,保持和属性名一致 案例: 接口方法: /** * 查询所有员工信息 */ List<Emp> SelectAllEmp(
1.引入依赖: <!--mybatisPlus--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.3.4</version> </dependency> <!--mybatis-plus代码生成器-
在Mybatis中传递参数除了可以使用实体类对象和基本数据类型外还可以使用map进行参数的传递,而且更为便捷。 mapper的代码 public interface UserMapper { List<User> getUserList(); int addUser(User user); int updateUser(User user); int addUser2(Map<S
MyBatis获取参数值的两种方式:${}和#{} ${}的本质就是字符串拼接,#{}的本质就是占位符赋值 ${}使用字符串拼接的方式拼接sql,若为字符串类型或日期类型的字段进行赋值时,需要手动加单引号; 但是#{}使用占位符赋值的方式拼接sql,此时为字符串类型或日期类型的字段进行赋值时,可以自动添加
在这次项目中使用了 Mybatis-Plus作为DAO层的框架。这篇文章就写一下Mybatis-Plus在使用过程中的知识积累(在下文中简称为MP) Mybatis-Plus官网:https://baomidou.com/ 1. Mapper层的创建 如果想使用MP的CRUD接口,我们必须要创建Mapper层,原理如下图所示: 我们继承
1、 问题:IDEA运行maven项目,启动后调用功能,mybatis模块在查询数据时发生了异常,查询到是所有的mapper.xml没有编译并拷贝到calsses目录,未进行打包编译。 当前的配置:mapper.xml和mapper接口同名,配置在同一包下,在applicationContext.xml中配置了mapper接口扫描器MapperScannerConfigur
1.搭建Mybatis框架环境 IDE:IntelliJ IDEA 2020.1.1 依赖管理:Maven3.6.1 持久层框架:mybatis3.5.2 数据库:mysql8.0.23 单元测试:junit4.11 mysql连接驱动:mysql-connector-java8.0.25 步骤: 1.创建普通maven项目,在pom.xml中配置junit,mysql-connector-java的jar包依赖 2.参考myba
使用注解开发 面向接口编程 -大家之前都学过面向对象编程,也学习过接口,但在真正的开发中,很多时候我们会选择面向接口编程 根本原因∶解耦,可拓展,提高复用,分层开发中,上层不用管具体的实现,大家都遵守共同的标准,使得开发变得容易,规范性更好 -在一个面向对象的系统中,系统的各种功能
一、配置文件中 # MyBatis配置 mybatis: # 搜索指定包别名,多个包别名只见用","隔开 typeAliasesPackage: com.zr.**.domain, com.zr.domain, com.zr.entity # 配置mapper的扫描,找到所有的mapper.xml映射文件,多个映射地址只见用","隔开 mapperLocations: classpath
报错信息如图: 根本原因:xxxMapper.java与xxxMapper.xml没有正确绑定。 可能造成这个bug的原因: 1.检查xml文件的namespace属性,要和xxxMapper.java一致; 2.检查xml文件里的方法名是否与mapper接口中的方法名一致(idea开发的话用Free Mybatis Plugin插件可以自动检测); 3.排除以上低级命
Could not autowire. No beans of ‘xxxxxxMapper’ type found: 方法1:在mapper文件上加@Repository注解,这是从spring2.0新增的一个注解,用于简化 Spring 的开发,实现数据访问 方法2:在mapper文件上加@Component注解,把普通pojo实例化到spring容器中,相当于配置文件中的
一次真实的Java面试的代码优化的问题 面试官:以下代码存在什么问题,以及怎么优化? package com.itender.leecode.interview; import java.util.List; /** * @Author: ITender * @CreateTime: 2022-02-22 16:40 * @Description: 面试代码优化问题 */ public class Intervie
1 查看磁盘空间情况 2 备份后卸载/home分区 umount /home/ 3 删除/home所在的lv lvremove /dev/mapper/centos-home #yes 4 扩容/dev/mapper/centos-root分区 lvextend -L +100G /dev/mapper/centos-root 5 扩展/root文件系统 xfs_growfs /dev/mapper/centos-root 6
业务请求过程: 前端 html 页面发起 ajax请求(http://localhost:8080/factoryController/findAll),访问 SpringMVC框架 的 Controller控制层,SpringMVC框架 解析请求,找到要调用的某个Controller,找到其中的findAll方法,同时把请求提交的参数封装到java对象中。之后Controller层
定制化 为满足需求,有时需要自己定制程序。 定制化程序的常见方式: 首先需要知道原理 SpringBoot底层帮我们注册的诸多组件,往往都使用了@ConditionalOnMissingBean,即容器中如果没有该组件那么则注册并注入。 因此需要定制化则只需要我们自己将需要替换的组件注入IOC容器即可。