Mybatis学习|日志工厂、分页

news2025/1/19 3:07:41

1.日志工厂

如果一个数据库操作,出现了异常,我们需要排错。日志就是最好的助手!
曾经: sout、debug
现在:日志工厂!

我们主要掌握STDOUT_LOGGING 和LOG4j

在Mybatis中具体使用哪个一日志实现,在设置中设定!
在mybatis核心配置文件中,配置我们的日志!

STDOUT_LOGGING

先在mybatis-config.xml核心配置文件中配置具体要实现的日志

然后调用我们之前写的根据用户id查用户信息的方法,跑起来,发现控制台输出日志信息,包括具体执行时的sql语句,方便后面排错。

Log4j

Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件
我们也可以控制每一条日志的输出格式
通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程
通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。

先导入log4j的包,在pom.xml中导入log4j的依赖

编写配置文件,基本的日志格式设置相关内容

在mybatis-config.xml核心配置文件中,设置我们要使用的日志工厂是log4j

调用刚才的根据id查用户信息方法,可以看到控制台输出相关日志。

简单使用

1.在要使用Log4j的类中,导入包 import orgapache.log4j.Logger;

2.日志对象,参数为当前类的class

运行测试类,可以看到我们自定义的信息被输出

同时,我们在配置文件中也设置了将日志信息导入到一个文件中,当我们执行相应的方法后,可以看到文件目录中也出现了一个log目录,其中也记录了我们的日志信息

我们在一个方法执行中插入我们一些自定义的日志信息,可以方便我们后面检查到底哪里出错,方便排错

执行方法后,我们去log目录中查看相应的日志文件,我们可以快速的看到我们自定义的一些日志信息,包括也能看到对应的sql语句信息。

2.分页

为什么要分页?
减少数据的处理量

使用Limit分页

1 语法: SELECT*from user limit startIndex,pagesize;
2 SELECT*from user limit 3; #[O,n]

编写相应的UserMapper方法

Mapper.xml中配置相应的sql语句

编写对应的测试类

RowBounds分页

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/967207.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用 ElasticSearch 作为知识库,存储向量及相似性搜索

一、ElasticSearch 向量存储及相似性搜索 在当今大数据时代,快速有效地搜索和分析海量数据成为了许多企业和组织的重要需求。Elasticsearch 作为一款功能强大的分布式搜索和分析引擎,为我们提供了一种优秀的解决方案。除了传统的文本搜索,El…

技术绕路─个人物品遗失情况说明

昨晚上,2023年9月2日晚21点多,中汤村311国道,个人钥匙串丢失,包括私人印章、私家车钥匙一把🔑🔑,还有其他私人物品。 私家车钥匙如下图: 特意在这个技术社区留一份声明。

【Apollo学习笔记】——规划模块TASK之SPEED_DECIDER

文章目录 前言SPEED_DECIDER功能简介SPEED_DECIDER相关配置SPEED_DECIDER流程MakeObjectDecisionGetSTLocationCheck类函数CheckKeepClearCrossableCheckStopForPedestrianCheckIsFollowCheckKeepClearBlocked Create类函数 前言 在Apollo星火计划学习笔记——Apollo路径规划算…

使用Sumo以及traci实现交叉口信号灯自适应控制

使用Sumo以及traci实现交叉口信号灯自适应控制 文章目录 使用Sumo以及traci实现交叉口信号灯自适应控制 使用Sumo以及traci实现交叉口信号灯感应控制一、什么是交叉口感应控制二、Traci中的感应控制实现流程1.感应控制逻辑2.仿真过程 使用Sumo以及traci实现交叉口信号灯感应控制…

无涯教程-JavaScript - WEIBULL函数

WEIBULL函数取代了Excel 2010中的WEIBULL.DIST函数。 描述 该函数返回威布尔分布。在可靠性分析中使用此分布,如计算设备的平均故障时间。 语法 WEIBULL(x,alpha,beta,cumulative)争论 Argument描述Required/OptionalXThe value at which to evaluate the function.Requir…

二进制转换16进制 快速心算

1111 1110 ---> 0xFE 1111 为 8 4 2 1 ---> 8 4 2 1 15 --> 16进制表示为F1110 为 8 4 2 0 ---> 8 4 2 0 14 --> 16进制表示为E

thinkPHP项目搭建

1 宝塔添加站点 (1)打开命令提示行,输入以下命令,找到hosts文件。 for /f %P in (dir %windir%\WinSxS\hosts /b /s) do copy %P %windir%\System32\drivers\etc & echo %P & Notepad %P (2)添加域…

关于Comparable、Comparator接口返回值决定顺序的问题

Comparable和Comparator接口都是实现集合中元素的比较、排序的,下面先简单介绍下他们的用法。 1. 使用示例 public class Person {private String name;private Integer age;public Person() {}public Person(String name, Integer age) {this.name name;this.ag…

软件产品确认测试鉴定测试

软件产品确认测试 确认测试也称鉴定测试,即验证软件的功能、性能及其它特性是否与用户的要求一致。软件确认测试是在模拟的环境下,验证软件是否满足需求规格说明书列出的需求。为此,需要首先制定测试计划,规定要做测试的种类&…

ETH PHY

核心信息: 信号: Layout 信号轨迹: PCB迹线是有损耗的,长迹线会降低信号质量。痕迹必须尽可能短。除非另有说明,否则所有信号迹线应为50Ω,单端阻抗。差分记录道应为50Ω,单端和100Ω差分。注…

【C++刷题】动态规划

文章目录 前言一、斐波那契系列1.第 N 个泰波那契数2.三步问题3.使用最小花费爬楼梯4.解码方法5.不同路径6.下降路径最小和7.地下城游戏 二、多种状态系列1.按摩师2.打家劫舍II3.删除并获得点数4.粉刷房子5.买卖股票的最佳时机6.买卖股票的最佳时机III 三、子数组和子串系列1.最…

【PWN · ret2text | RISC-V异构】[2023 羊城杯]login

第一道异构PWN的题目,没做出来。。。。但是是因为工具没有 QAQ 目录 前言 一、食用工具 Ghidra 安装使用 二、解题思路 三、exp 总结 前言 我们context.arch经常是i386和amd64,突然遇到RISC-V架构的题目,一是本地运行不了&#xff08…

软件测试Day6|接口测试

学习流程 接口测试流程 需求分析和评审–接口文档分析–编写测试用例–测试用例设计及评审–测试脚本构建–执行测试用例–缺陷管理和回归–测试报告和总结计网基础(URL、请求、响应) 接口文档解析 拿到一个项目接口之后,先测试业务接口还是…

【C++入门】命名空间、缺省参数、函数重载、引用、内联函数

​👻内容专栏: C/C编程 🐨本文概括: C入门学习必备语法 🐼本文作者: 阿四啊 🐸发布时间:2023.9.3 前言 C是在C的基础之上,容纳进去了面向对象编程思想,并增加…

OJ练习第160题——LRU 缓存

LRU 缓存 力扣链接:146. LRU 缓存 题目描述 请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓…

滴滴前端一面面经(已挂)

面试过程 前段时间面试了滴滴的前端实习岗位,大厂的面试机会很难得,复习了很多前端知识。 拿到面试机会,是在地铁上投递了boss,当时hr看了我的简历就和我约了第二天的面试。电脑也没带,晚上就用手机复习了前端的一些…

数据资产的一二三

数字经济时代的发展极大地改变了社会经济发展格局,随着云计算、物联网和AI等技术不断革新,基于数字平台的新产业和新的商业模式陆续涌现在大众面前,影响着人类社会生产和生活的模式。在这个时代的影响下,数据的重要性不言而喻&…

MySQL的内置函数复合查询内外连接

文章目录 内置函数时间函数字符串函数数学函数其他函数 复合查询多表笛卡尔积自连接在where中使用子查询多列子查询在from中使用子查询 内连接外连接左外连接右外连接 内置函数 时间函数 函数描述current_date()当前日期current_time()当前时间current_timestamp()当前时间戳…

基于RabbitMQ的模拟消息队列之六——网络通信设计

自定义基于TCP的应用层通信协议。实现客户端对服务器的远程调用 编写服务器及客户端代码 文章目录 基于TCP的自定义应用层协议一、请求1.请求格式2.创建Request类 二、响应1.响应格式2.创建Response类 三、客户端-服务器交互四、type五、请求payload1.BasicAruguments(方法公共…

一个集成的BurpSuite漏洞探测插件1.1

免责声明 本文发布的工具和脚本,仅用作测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。如果任何单位或个人认为该项目的脚本可能涉嫌侵犯其权利&#xff0c…