
Mybatis
基础总结
Jesslili
java小小白
展开
-
MyBatis--08--常用注解
一. 常用注解总结@Insert:实现新增@Update:实现更新@Delete:实现删除@Select:实现查询@Result:实现结果集封装@Results:可以与@Result 一起使用,封装多个结果集@ResultMap:实现引用@Results 定义的封装@One:实现一对一结果集封装@Many:实现一对多结果集封装@SelectProvider: 实现动态 SQL 映射@CacheNamespace:实现注解二级缓存的使用二. 使用注解实现基本CRUD映射配置文件不原创 2020-07-14 13:43:25 · 235 阅读 · 0 评论 -
MyBatis--07--延迟加载与缓存
一. 延迟加载1. 什么是延迟加载延迟加载:就是在需要用到数据时才进行加载,不需要用到数据时就不加载数据。延迟加载也称懒加载.好处:先从单表查询,需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。坏处 :因为只有当需要用到数据时,才会进行数据库查询,这样在大批量数据查询时,因为查询工作也要消耗时间,所以可能造成用户等待时间变长,造成用户体验下降。立即加载:不管用不用,只要一调用方法,马上发起查询。问题:有一个用户,他有100个账户。在查询用户时,用户原创 2020-07-14 12:02:41 · 190 阅读 · 0 评论 -
MyBatis--06--多表查询
示例:用户与账户一个用户可以有多个账户。一个账户只能属于一个用户(多个账户也可以属于一个用户)。步骤:建立两张表:用户表和账户表让用户表和账户表之间具备一对多的关系:在账户表中添加外键。建立两个实体类:用户实体类和账户实体类建立两个配置文件:用户配置文件、账户配置文件实现配置:查询用户时,同时得到该用户下所包含账户信息。查询账户时,同时得到账户所属用户信息。1、 创建表:CREATE TABLE `account` ( `ID` INT(11) NOT NULL COMMEN原创 2020-07-14 09:34:58 · 411 阅读 · 1 评论 -
MyBatis--05--连接池、事务控制与动态SQL语句
一. 连接池的使用1. Mybatis 连接池的分类Mybatis 连接池提供了3种方式的配置,配置的位置在 SqlMapConfig.xml 中的 dataSource 标签的 type 属性type 的取值:POOLED: 使用连接池的数据源UNPOOLED: 不使用连接池的数据源JNDI: 使用 JNDI 技术获取 dataSource 对象,不同的服务器拿到的 dataSource 不一样。且如果不是web或者mawen的war工程是不能使用的。2. 连接池的使用<dataSo原创 2020-07-13 12:03:55 · 219 阅读 · 0 评论 -
MyBatis--04--配置文件详解
一. properties标签的使用在 SqlMapConfig.xml 中使用properties标签<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><!-- mybatis的主配置文原创 2020-07-13 10:14:17 · 168 阅读 · 0 评论 -
MyBatis--03--输出结果封装
resultType 配置结果类型一. 基本类型示例1. Dao 接口/*** 查询总记录条数*/int findTotal();2. 映射配置<!-- 查询总记录条数 --><select id="findTotal" resultType="int"> select count(*) from user;</select>二. 实体类类型示例1. Dao 接口/*** 查询所有用户*/List<User> findAl原创 2020-07-12 16:47:08 · 165 阅读 · 0 评论 -
MyBatis--02--实现CRUD操作
使用要求:1、持久层接口和持久层接口的映射配置必须在相同的包下2、持久层映射配置中 mapper 标签的 namespace 属性取值必须是持久层接口的全限定类名3、SQL 语句的配置标签<select>,<insert>,<delete>,<update>的 id 属性必须和持久层接口的方法名相同。先将测试类简化public class MybastisCRUDTest { private InputStream in ; private Sq原创 2020-07-12 16:21:53 · 181 阅读 · 0 评论 -
MyBatis--01--基础入门
MyBatis入门案例1. 创建user表CREATE TABLE `user` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `username` VARCHAR(32) NOT NULL COMMENT '用户名称', `birthday` DATETIME DEFAULT NULL COMMENT '生日', `sex` CHAR(1) DEFAULT NULL COMMENT '性别',`user``user` `address` VARCH原创 2020-07-12 13:54:15 · 160 阅读 · 0 评论