栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

mybatis

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

mybatis

SqlSessionFactory sqlSessionFactory =new SqlSessionFactoryBuilder()
.build(Resources.getResourceAsStream(“mybatis-config.xml”));

//开启缓存
SqlSession session=sqlSessionFactory .openSession();

mybatis配置文件比较多
主配置文件:mybatis-config.xml,主文件的头部约束跟其他的是不一样的

<--之后这个是交给spring处理,不用在mybatis配置 --> <-- 引入其他配置文件资源-->

其他配置文件:

select *from user

//id是mybatis调用时相当于bean的东西,resultType对应的是类型,parameterType是传入的参的类型

select*from user where id=#{id}

//如果是user对象,直接写对应的变量字段名即可。

insert into
user(username,birthday,sex,address)
values(#{username},#{birthday},#{sex},#{address})

//传进来带id和username参数的user,先在user弄好带着两个参的构造器

update user set username=#{username} where id=#{id};

//模糊查询,#{}如果参数是String类型 会自动加上’’; 直 接 字 符 串 拼 接 , 不 做 任 何 处 理 , 有 可 能 会 出 现 s q l 注 入 问 题 , < s e l e c t i d = " s e l e c t U s e r B y U s e r N a m e " r e s u l t T y p e = " 实 体 类 全 限 定 类 名 " p a r a m e t e r T y p e = " S t r i n g " > s e l e c t ∗ f r o m u s e r w h e r e u s e r n a m e l i k e ′ {}直接字符串拼接,不做任何处理,有可能会出现sql注入问题, select * from user and username=#{username} and sex=#{sex} and address=#{address} and birthday=#{birthday} and id=#{id} update user username=#{username}, sex=#{sex}, address=#{address}, birthday=#{birthday}, where id=#{id}

<–批量操作 数据库的xml配置写法 一般用于批量删除 这里用查询测试 -->

select* from user where id

懒加载

懒加载流程:
UserMapper.xml



    select * from orders where user_id=#{user_id}

根据id在各自的mapper添加对应的方法,然后调用UserMapper实现懒加载,这个是根据userid在Order查数据

//一级缓存
默认开启 保存在session中 session=sessionFactory.openSession(); 以hashmap的方式存储的,key-语句及其参数,value -运行的结果

//二级缓存
mybatis的单机缓存
先在mybatis-config.xml 的中

usermapper.xml中

可放任意位置,一般放末尾

缓存默认放在磁盘文件中,因此javaBean要实现序列化接口。一般后面用redis存放实现
可全局,也可在想哪个类开缓存就放在哪XXXMapper.xml
测试时。 将上一个事物完全完成之后,才使用缓存,,即第二个事务才开始会有缓存命中率。不用重新在数据库读取数据,即提交和关闭后
二级缓存只能查,不用有插修删操作,不然会清空缓存

OPERATION_LOG_ID AS operationLogId, LOG_TYPE AS logType, LOG_NAME AS logName, USER_ID AS userId, CLASS_NAME AS className, METHOD AS method, CREATE_TIME AS createTime, SUCCEED AS succeed, MESSAGE AS message

select

from

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/770323.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号