MyBatis
MyBatis相关基础
風林火山zyw
这个作者很懒,什么都没留下…
展开
-
MYBatis(十一)分页查询
1 pom文件中添加依赖<!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper --><dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.2.0</version>原创 2022-04-11 01:40:29 · 712 阅读 · 0 评论 -
MyBatis(十)逆向工程
正向工程:先创建Java实体类,由框架负责根据实体类生成数据库表。Hibernate是支持正向工程的逆向工程:先创建数据库表,由框架负责根据数据库表,反向生成如下资源:Java实体类 Mapper接口 Mapper映射文件pom文件中添加依赖插件:注意:<build>标签中的mysql驱动需要和dependencies标签中的版本一致<build> <!-- 构建过程中用到的插件,如果版本太低,请用更高的版本 --> <plugins&g原创 2022-04-11 01:02:12 · 163 阅读 · 0 评论 -
MyBatis(九)缓存
1 MyBatis的一级缓存一级缓存是SqlSession级别的,通过同一个SqlSession查询的数据会被缓存,下次查询相同的数据,就会从缓存中直接获取,不会从数据库重新访问使一级缓存失效的四种情况:不同的SqlSession对应不同的一级缓存 同一个SqlSession但是查询条件不同 同一个SqlSession两次查询期间执行了任何一次增删改操作 同一个SqlSession两次查询期间手动清空了缓存 2 MyBatis的二级缓存二级缓存是SqlSessionFactory级.原创 2022-04-10 23:59:04 · 53 阅读 · 0 评论 -
MyBatis(八)动态SQL
Mybatis框架的动态SQL技术是一种根据特定条件动态拼装SQL语句的功能,它存在的意义是为了解决拼接SQL语句字符串时的痛点问题。if 标签if标签可通过test属性(即传递过来的数据)的表达式进行判断,若表达式的结果为true,则标签中的内容会执行;反之标签中的内容不会执行。在where后面添加一个恒成立条件1=1,这个恒成立条件并不会影响查询的结果这个1=1可以用来拼接and语句,例如:当empName为null时如果不加上恒成立条件,则SQL语句为select * from t_原创 2022-04-10 21:57:26 · 660 阅读 · 0 评论 -
MyBatis(七)一对多映射处理
员工实体类public class Emp { private Integer eid; private String empName; private Integer age; private String sex; private String email; private Dept dept; //...构造器、get、set方法,toString方法等}部门实体类public class Dept { private Integer d原创 2022-04-10 18:59:28 · 355 阅读 · 0 评论 -
MyBatis(六)多对一映射处理
员工实体类public class Emp { private Integer eid; private String empName; private Integer age; private String sex; private String email; private Dept dept; //...构造器、get、set方法,toString方法等}部门实体类public class Dept { private Integer原创 2022-04-10 18:19:18 · 376 阅读 · 0 评论 -
MyBatis(五)resultMap自定义映射
如果数据库字段和实体类中的属性字段存在不一致情况,通常可自定义resultMap来映射;另外还可以通过sql语句的别名和开启下划线转驼峰的方式来映射。1 resultMapresultMap:设置自定义映射属性:id:表示自定义映射的唯一标识,不能重复 type:查询的数据要映射的实体类的类型子标签:id:设置主键的映射关系 result:设置普通字段的映射关系子标签属性:property:设置映射关系中实体类中的属性名 column:设置映射关系中表中的字段名若字段名和实原创 2022-04-10 17:55:48 · 1071 阅读 · 0 评论 -
MyBatis(四)添加数据获取主键
在mapper.xml中设置两个属性useGeneratedKeys:设置使用自增的主键key Property:因为增删改有统一的返回值是受影响的行数,因此只能将获取的自增的主键放在传输的参数user对象的某个属性中<!--void insertUser(User user);--><insert id="insertUser" useGeneratedKeys="true" keyProperty="id"> insert into t_user values (n原创 2022-04-10 16:40:05 · 350 阅读 · 0 评论 -
MyBatis(三)查询功能
MyBatis的各种查询功能1、若查询的数据只有一条a.可以通过实体类对象接收 b.可以通过List集合接收 c.可以通过Map集合接收<!--User getUserById(@Param("id") int id);--><select id="getUserById" resultType="User"> select * from t_user where id = #{id}</select><!--List<User&g原创 2022-04-10 16:32:32 · 273 阅读 · 0 评论 -
MyBatis(二)参数取值
Mapper接口package com.nmg.mybatis.mapper;import com.nmg.mybatis.pojo.User;import org.apache.ibatis.annotations.Param;import java.util.List;public interface ParameterMapper { List<User> getAllUser(); List<User> getUserByUserna原创 2022-04-10 16:11:15 · 1364 阅读 · 0 评论 -
MyBatis(一)基础配置
1 pom文件依赖在利用MyBatis框架实现与数据库交互时,需要在pom文件中添加以下相关依赖<!-- MySql驱动--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8原创 2022-04-10 15:00:24 · 818 阅读 · 0 评论