最新要闻
- 当前快看:群友们的表情包《九十期》
- 每日视点!男子镜头前嗨舞被羊顶翻 网友看完大笑:做人不能太狂浪
- 每日头条!自媒体捏造董明珠和王自如恋情!龚文祥公开致歉:希望取得原谅
- 今日快看!Win11最新正式版闯大祸:SSD性能不忍直视
- 天天即时看!微软签署第四份《使命召唤》十年协议:索尼仍不愿妥协
- 【天天聚看点】男孩长蛀牙爸爸用电钻钻牙止痛 被网友疯狂指责:太危险了
- 全球讯息:20.98万元起 2023款比亚迪唐DM-i上市:全系升级铝合金悬架
- 热点聚焦:冲击百万销量!比亚迪汉DM-i、DM-p补贴10000元现金
- 当前关注:双拖布+超大吸力!小米米家扫拖机器人3S发售:千元旗舰
- 世界视点!特斯拉一体化压铸工艺被质疑增加修车成本 一个小碰撞可能要修11万
- 精彩看点:追上Intel AMD锐龙7000处理器终于用上192GB内存:频率满血
- 环球看热讯:315全景观察:深情主播“连哄带骗” 爸妈的钱就没了
- 最新:无解了!微软将推出基于GPT-4的Office 365服务 实用性拉满
- 【焦点热闻】北京通州区汽车消费券活动时间是什么时候?
- 【世界播资讯】重庆龙凤胎熊猫宝宝取名“渝可”“渝爱”
- 速看:《小美人鱼》剧照还原动画经典场景:就是肤色不太对
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
即时看!MyBatis
MyBatis
1.编写流程
1、编写工具类 如:MybatisUtils (里面需要一个配置文件mybatis-config.xml)
主要是为了获取SqlSessionFactory,以及从中获得SqlSession的实例
2、编写配置文件 mybatis-config.xml (环境准备)
(相关资料图)
3、编写实体类
4、编写接口 ***mapper.java
5、编写***mapper.xml 文件
6、编写测试类
@Testpublic void test01{SqlSession sqlSession = Mybatis工具类.getSqlSession();对象 对象名 = sqlSession.getMapper(mapepr接口.class);返回值 = 对象名.方法名;sqlSession.close();}
注意点:1、注意maven的扫描位置,即pom文件中 中的扫描资源文件的位置2、SqlSession一定要记得关闭 如:sqlSession.close();
2.CRUD
1、nameSpace
命名空间 和mapper接口路径保持一致
2、select
1、id 和mapper接口中的方法名保持一致,否则会出现绑定异常
2、parameterType 参数类型,如 int 或 com.zxw.pojo.User
3、resultType 结果类型 如:com.zxw.pojo.User
3、增删改 需要提交事务
查询不需要提交事务,但是增删改 需要提交事务 如:sqlSession.commit();
4、万能map
当参数为多个是的时候,可以使用map传参,即parameterType= map
即传递sql参数的时候,注意map的key即可
5、模糊查询
1、java传递代码的时候,使用通配符%%
List abc = mapper.selectList("%周%");
2、在sql拼接的时候使用通配符
select * from user where name like "%"#{value}"%"
3、配置解析
所有的xml文件,在写的时候,都是由顺序限制的,如配置properties就必须放在前面,否则会出
1、核心配置文件 mybatis-congfig.xml
2、环境配置(environments)在xml文件中可以配置多个环境,根据default选择需要用的环境
3、属性(properties) 主要是为了引用外部的配置文件,如db.properties。外部配置文件优先级比较高
4、类型别名(typeAliases)
一、给实体类起别名
二、扫描包,默认是类名首字母小写,也可以在实体类上加上注解(@Aliases),来使用自己在注解中写的别名
5、设置
7、其他配置
typeHandlers(类型处理器)
objectFactory(对象工厂)
plugins插件
mybatis-generator-core
mybatis-plus
通用mapper
8、映射器(mappers)
MapperRegistry:注册绑定我们的mapper文件
方式一:
方式二:
方式三:
注意点:方式二和三这两个,第一需要 接口和他的mapper配置文件必须同名,第二个 接口和他的mapper配置文件必须在同一个包下!
4、解决属性名和字段名不一致的问题
resultMap
column是数据库中的字段,property是实体类中的属性
5、日志
Log4J
1、先导入log4j的包
2、配置log4j.properties
3、配置log4j的日志实现
在mybatis中
4、使用
简单使用:
一、在需要使用log4j的类中,导入包 org.apache.log4j.Logger
二、日志对象,参数为当前类的class
static Logger logger = Logger.getLogger(类名.class);
三、设置日志级别 info.debug,error
6、分页
1、limit 在sql语句中实现
2、RowBounds 在java代码中实现
3、分页插件 mybatis pageHelper
7、注解
1、@select 在接口上添加此注解,直接在里面编写 sql语句【此注解只适用于简单的sql语句,复杂的还是建议使用xml文件中编写】
2、@Param 在接口中,出现多个参数(基本数据和String 类型,引用数据类型不需要加此注解)的时候,注意再每个参数前,添加@Param注解,执行sql的时候,是以param中的value为主。【param中的value值也要和xml文件#{}中的值保持一致】
8、#{}和${}
通常都是使用#{}。主要是安全,防止sql注入,以前使用${},会导致sql注入,因为会产生自动拼接
9、Lombok
主要三个注解
@Data @AllArgsConstructor@NoArgsConstructor
但有些觉得不建议使用这个,但这个看公司要不要使用这个把
10、多对一的处理
1、按照查询嵌套处理2、按照结果嵌套处理
11、一对多处理
总结:
对象:assoiation 多对一
集合:collection 一对多
javaType 和 ofType
javaType是用来指定实体类中属性的类型
ofType是用来指定映射到List或者集合中的pojo类型,泛型中的约束类型
12、动态SQL
if标签
choose、when、otherwise
选择其中一个条件进行执行
trim、where、set
update Author username=#{username}, password=#{password}, email=#{email}, bio=#{bio} where id=#{id} ... ...
foreach
foreach元素的功能非常强大,它允许你指定一个集合,声明可以在元素体内使用的集合项(item)和索引(index)变量。它也允许你指定开头与结尾的字符串以及集合项迭代之间的分隔符。这个元素也不会错误地添加多余的分隔符,看它多智能!
提示你可以将任何可迭代对象(如 List、Set 等)、Map 对象或者数组对象作为集合参数传递给 foreach。当使用可迭代对象或者数组时,index 是当前迭代的序号,item 的值是本次迭代获取到的元素。当使用 Map 对象(或者 Map.Entry 对象的集合)时,index 是键,item 是值。
SQL片段
1、使用sql标签抽取重复的部分
2、在需要使用的地方使用include标签根据sql标签的id进行引用
注意点:最好基于单表定义sql片段;不要存在where标签
13、缓存
1、mybatis有一级缓存,二级缓存
一级缓存只存在再一个会话中,就是一个sqlSession中,会话结束,一级缓存就失效了。
二级缓存作用与同一个namespace下,即同一个mapper中的,当一级缓存失效后,就会把数据放到二级缓存中(前提是会话关闭,或者会话提交),配置二级缓存需要先在mybatis-congfig.xml中先配置,开启缓存,其实mybatis中默认就是开启的,一般都会显示的展示出来,再在具体的mapper.xml中,配置
2、清楚策略
- LRU 最近很少使用的:移除最长时间不被使用的对象(默认)
- FIFO 先进先出:按照对象进入缓存的顺序来移除它们
- SOFT 软引用:基于垃圾回收器状态和软引用规则移除对象
- WEAK 弱引用:更积极地基于垃圾收集器状态和弱引用规则移除对象
关键词:
即时看!MyBatis
当前快看:群友们的表情包《九十期》
每日视点!男子镜头前嗨舞被羊顶翻 网友看完大笑:做人不能太狂浪
每日头条!自媒体捏造董明珠和王自如恋情!龚文祥公开致歉:希望取得原谅
今日快看!Win11最新正式版闯大祸:SSD性能不忍直视
新动态:设计一款可扩展和基于windows系统的一键处理表格小工具思路
天天即时看!微软签署第四份《使命召唤》十年协议:索尼仍不愿妥协
【天天聚看点】男孩长蛀牙爸爸用电钻钻牙止痛 被网友疯狂指责:太危险了
全球讯息:20.98万元起 2023款比亚迪唐DM-i上市:全系升级铝合金悬架
热点聚焦:冲击百万销量!比亚迪汉DM-i、DM-p补贴10000元现金
世界观速讯丨点积、内积、外积、叉积、张量积——概念区分
day05-Lombok、SpringInitializer
【世界聚看点】国家推出稳定2023年大豆生产一揽子支持政策
当前关注:双拖布+超大吸力!小米米家扫拖机器人3S发售:千元旗舰
世界视点!特斯拉一体化压铸工艺被质疑增加修车成本 一个小碰撞可能要修11万
精彩看点:追上Intel AMD锐龙7000处理器终于用上192GB内存:频率满血
环球看热讯:315全景观察:深情主播“连哄带骗” 爸妈的钱就没了
最新:无解了!微软将推出基于GPT-4的Office 365服务 实用性拉满
【焦点热闻】北京通州区汽车消费券活动时间是什么时候?
Redis监控
sed文本处理工具常见用法
每日看点!Prometheus 监控系统1
Java中的NIO
环球快报:带你全方面了解字节 A/B 实验的文化与工具
世界新资讯:【金融街发布】交易商协会发布企业资产证券化基础性制度
【世界播资讯】重庆龙凤胎熊猫宝宝取名“渝可”“渝爱”
速看:《小美人鱼》剧照还原动画经典场景:就是肤色不太对
头条焦点:中国制造!索尼第四代降噪豆XM5佩戴/音质/快充全面升级:AirPods Pro2劲敌
老人墓中藏13万现金全部霉变 专业能手全力抢救:官方科普纸钞如何保管
海底捞部分门店取消免费美甲:只能付费购买穿戴甲
视讯!SQLMap 源码阅读
今日观点!abc285G
环球精选!JVM -Xss
【高端访谈·城市力量】“双碳”背景下农商银行如何“点绿”成金?——访秦农银行党委书记、董事长李彬
今热点:五菱电动“吉姆尼” 宝骏悦也续航里程公布:能跑303公里
董明珠要玩大的?格力成立房地产新公司 投资数亿元
东方甄选称被骗了 虾品供应商发声:不认可甩锅行为
热点在线丨百度文心一言申请页被挤爆:预约1小时涌入3万企业
环球快讯:现实版GTA!美劫匪偷直升机因操作失误当场坠毁:一地碎片
国宝大熊猫的视频_国宝大熊猫的故事
66.类型转换
快讯:【0基础学爬虫】爬虫基础之抓包工具的使用
天天热头条丨制作学生信息管理系统
文心一言正式对标GPT-4,是青铜还是王者?
全球播报:恒生指数16日收跌1.72% 互联网科技股集体走低
每日速看!铁匠用30年给猫和老鼠做铠甲:一套比一套帅!
戴尔推出了灵越14 ARM版:骁龙8cx Gen 2、16小时长续航
世界播报:卡布达归来!《铁甲小宝》高清修复版将至:已开通B站账号
两败俱伤:比亚迪海豹街头铲翻宝马X5
块级元素和行内元素
天天实时:SublimeREPL设置详解——实现代码传递(Eval in REPL)
天天观速讯丨JavaScript 实现异步任务循环顺序执行
自定义 Spring 通用日志注解
精彩看点:日债市场继续消化欧美银行风险扰动 收益率曲线陡峭化下移
即时焦点:【财经分析】债市利空反应钝化 后市操作存分歧
每日快报!【新华500】新华500指数(989001)16日跌1.29%
【环球时快讯】小伙爆改特斯拉Model 3:加装120寸轮毂、增加“逆天”功能
【新要闻】百度文心一言问答测试为视频演示 李彦宏:为保证效果提前录制
全球实时:深蓝SL03车主联合声明:长安雇水军打压车主 要求车辆终身质保加补偿
国内首款天玑9000旗舰平板!OPPO Pad 2官宣:下周发布
【世界时快讯】曾投资一亿美元:马斯克痛批OpenAI成为营利组织
冰墩墩钥匙扣(冰墩墩多少钱一只)
最新消息:76.qt qml-QianWindow开源炫酷界面框架(支持白色暗黑渐变自定义控件均以适配)
今热点:Markdown用法解析
世界微动态丨得物从0到1自研客服IM系统的技术实践之路
天天看热讯:性能优化搞得好,Tomcat少不了。| 博学谷狂野架构师
世界观天下!笔记本水冷改造记录
世界球精选!创维造车:主打座舱养生续命、碰撞测试0分!真是讽刺他妈给讽刺开门
环球即时:反转!国内油价明晚大概率下跌 预计下调0.07元/升
《暗黑4》本周末开测 世界BOSS刷新时间公布
天天关注:巴奴火锅下架富硒土豆!消费者可获赠500元储值卡:领取有条件
天天热推荐:百度发布文心一言AI模型:可实现文字、图片与视频智能生成
喝的人越来越少!星巴克向中国三四线城市进军:30多一杯咖啡县城青年能爱多久
麦芒11什么时候上市的?麦芒11手机参数配置
华为电视怎么投屏?华为电视怎么下载第三方软件?
孙海洋是湖北哪里人?
鲶鱼效应是什么意思?鲶鱼效应的经典案例是什么?
首店经济是什么意思?首店经济是谁提出的?
快报:权志龙演唱会门票多少钱2020_权志龙演唱会门票多少钱
环球讯息:用图技术搞定附近好友、时空交集等 7 个典型社交网络应用
GPT-4测评,大家先别急,图片输入还没来
全球时讯:C#使用ObjectPool提高StringBuilder性能
今头条!RTX 40笔记本新品翻车?别急 先升级NVIDIA新驱动再说
每日精选:官宣!《炉石传说》被移出杭州亚运会项目:职业选手难过
环球快消息!360发布年度手机安全报告:受骗男性占七成 女性三成
天天最资讯丨800V电气架构打造 全新起亚EV9发布:二三排可面对面乘坐
扣上的安全带会自动打开?本田在美国召回近45万辆汽车
【独家焦点】虹科案例|虹科Visokio商业智能平台在疫后帮酒店业打好翻身仗!
环球今热点:python 二分法查找
环球实时:面试问题-密码
Fortran语言在线代码运行编译工具推荐
Scrapy中的response对象的属性及方法,附加mate属性的使用方法
每日短讯:强冷空气来袭!河南三门峡3月下雪:厚厚一层一夜回冬
环球要闻:爱立信CEO:印度是全球推出5G速度最快的国家之一
上映25周年纪念:3D重制版《泰坦尼克号》国内定档
真凉了!暴雪网易闹掰 《炉石传说》或被移出杭州亚运会项目
世界快看:B站投资 网红爆款:理然男士沐浴露29.9元狂促
更改 ESX 或 ESXi 主机的主机名称
每日快讯!作业DNS服务配置
NOI 2008 志愿者招募 题解 (神奇费用流)