mybatis基本配置与使用(在Test中)

大神带你玩转高级Mybatis——一篇文章精通mybatis—如何快速掌握Mybatis的基本概念以及高级使用(打印sql、别名、驼峰配置 、如何获得自增主键、批量插入foreach、if test) 什么是 MyBatis ? Apahce的一个开源项目 一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作 通过简单的 XML 或注解来配置和映射 Java对象 到 数据库中的记录 官方地址:https://mybatis.org/mybatis-3/ 核心流程? 每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为核心 SqlSessionFactory 的实例可以通过 SqlSessionF 阅读详情

文件结构
在这里插入图片描述
SqlMapCongfig.xml

<?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">
<configuration>
    <environments default="mysql">
        <environment id="mysql">
            <transactionManager type="JDBC"></transactionManager>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis_db?serverTimezone=UTC"/>
                <property name="username" value="username"/>
                <property name="password" value="password"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="com/dao/UserDao.xml"></mapper>
    </mappers>
</configuration>

com中UserDao接口、mapper

UserDao.java

package com.dao;

import com.pojo.User;

import java.util.List;

public interface UserDao {
    List<User> findAll();
}

mapper 使用代理方式实现select

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dao.UserDao">
    <!-- 查询全部 -->
    <select id="findAll" resultType="com.pojo.User">
        select * from USER
    </select>
</mapper>

resultType基本类型有很多写法。上面的是自定义的类型。

基本 逻辑 看test中的mybatisTest

package com.test;

import com.dao.UserDao;
import com.pojo.User;
import jdk.internal.util.xml.impl.Input;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.IOException;
import java.io.InputStream;
import java.util.List;

public class MybatisTest {
    public static void main(String[] args) throws IOException {
//        1.读取配置文件
//        创建Io流
        InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
//        2.创建SqlSessionFactoryBuilder对象
        SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
//        3.创建SqlSessionFactory对象
        SqlSessionFactory factory = builder.build(in);
//        4.创建SqlSession对象
        SqlSession session = factory.openSession();
//        5.创建Dao接口的代理对象
        UserDao userDao = session.getMapper(UserDao.class);
//        6.执行方法
        List<User> users = userDao.findAll();
        for (User user:users){
            System.out.println(user);
        }
//        7.释放资源+提交事务
        session.close();
        in.close();
    }
}

别名应用
SqlMapConfig.xml

<typeAliases>
        <package name="com.pojo"/>
</typeAliases>

UserDao.xml

    <select id="findAll" resultType="uSeR">
        select * from USER
    </select>
testmybatis.zip mybatis的sql参数化查询详细解释,附件中附带了测试用例中用到的数据表和数据的sql,只需在myql服务器中创建一个test的数据库,然后在test数据库中执行里面的sql.sql文件就可以了。该例子解释文章:https://www.cnblogs.com/ismallboy/p/11374510.html 立即下载

相关推荐

腾讯、飞书等在线表格自动化编辑--python

在线文档自动化处理数据

qq_32828053的博客 2万+

mybatis if标签中test可以写什么_Day029-MyBatis入门

第57次(mybatis)学习主题:mybatis学习目标:1 掌握框架的概念2 掌握mybatis环境搭建MyBatis搭建:mybatis.xml核心配置文件:<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" ...

weixin_39614750的博客 627

拆开华为BBU5900,看看5G基站的大脑里到底装了啥?

本文深度拆解华为BBU5900,揭示5G基站核心处理单元的硬件架构与设计哲学。通过详细解析模块化设计、智能电源系统和动态散热方案,展现其支撑千兆速率、毫秒级时延的技术奥秘,为5G网络部署提供实用参考。

weixin_31456563的博客 563

mybatis:<if test></>标签使用小细节

if标签里,test可以比较字符串,int,null等。 其中: 1:空字符串比较 2:null比较 3:数字比较 4:字符串比较 或者 如果test是双引号,里面的字符串用单引号并加.toString() 如果test是单引号,里面的字符串用双引号就行 5:test里面还可以加and,or,()等 http://t.zoukankan.com/bigfacewei-p-13183420.html ...

1462

从0开始使用ArcGIS实现克里金(Kriging)插值(适用数学建模竞赛,详解)

适用:数学建模学习中遇到需要进行克里金(Kriging)插值的任务。希望尽快上手,选择出恰当的半函数模型,并获得插值后的图片。 详细步骤: 一、准备数据 在excel中准备需要进行克里金插值的内容,应该包括至少三列:X坐标,Y坐标,数据。在每一列的列首做好标记,方便导入ArcMap后对应。注意存储时存为xls文件。 二、将数据导如导ArcMap 点击下面这个标记,把数据文件添加到ArcMap。 如果是初次使用的化,可能会不知道进入添加数据对话框之后如何操作。这时应该先点击红框标记的图标,连接到文件夹。

east_fence的博客 4万+

camera——HAL层知识分享

CameraHAL层是Android相机系统的核心中间层,负责连接Framework层与硬件驱动层。它通过标准化接口解耦软硬件,实现跨平台兼容性,同时为厂商提供硬件定制空间。主要功能包括:设备管理、数据流处理、参数控制以及图像优化。关键子系统涵盖预览、拍照、录像、对焦与曝光等模块,采用HAL3的"请求-响应"模型实现精细控制。性能优化重点关注启动时间、帧率稳定性和延迟控制。通过分层架构设计(接口层-核心层-适配层)和缓冲池机制,确保高效数据传输和硬件资源调度。

2302_77429403的博客 2075

mybatis if标签中test可以写什么_解析Mybatis判断表达式源码分析

在我们开发过程中用 Mybatis 经常会用到下面的例子Mapper如下Map<String ,String > testArray(@Param("array") String [] array);XMl中的sql如下<select id="testArray" resultType="map"> select * from t_ams_ac_pmt_dtl wher...

weixin_39653717的博客 2370

代码接单:用 ComfyUI 搭建电商模特换装工作流(保姆级教程)

在闲鱼和小红书上,搜一下“AI 模特图”或者“服装换模特”,你会发现大量的接单需求。太贵:请个外模拍一套图,动辄几千块。太慢:寄样品、排期、拍摄、修图,半个月过去了。太卷:竞对都在上新,你还在等图。“给我一张你的衣服平铺图(或假人图),我 10 分钟给你生成真人上身图,一张只要 50 块。对于商家是省钱,对于你是纯利润。为什么不用 Midjourney?因为 MJ 抽卡不可控,无法保持衣服版型一致。只有 ComfyUI,才能做到精准控制,实现工业化量产。

BUG猿的博客 1779

第一个mybatis程序--狂神说笔记(亲测成功)

我的第一个mybatis程序0、前言1、数据库2、IDEA项目2.1、新建项目2.2 配置依赖2.3 新建文件2.4 运行UserDaoTest 0、前言 先贴一份狂神说网站的学习笔记:Mybatis学习笔记 本文纯属记录成功案例,而不记录教学过程 本文与视频笔记有点不同 本文仅为学习笔记,如侵则删 1、数据库 创建数据库mybatis,表为user CREATE DATABASE `mybatis`; USE `mybatis` CREATE TABLE `user`( `id` INT(20) N

weixin_43305344的博客 497

全新YOLOv11有效涨点改进专栏目录 | 本专栏持续更新500+篇内容 | 包含各种卷积、主干网络、各种注意力机制、检测头、损失函数、小目标检测改进、二次创新模块、独家创新等几百种创新点改进

YOLOv11专栏持续更新500+种创新改进方案,涵盖卷积优化、注意力机制、主干网络、Neck特征融合、检测头、小目标检测等核心模块。提供独家创新点组合方案、模型轻量化改进及最新Mamba架构融合技术,配套完整实验代码和训练参数解析。订阅用户可加入专属答疑群,获取一键运行项目支持。专栏包含YOLOv11网络结构详解、配置文件解读等入门必读内容,助力科研论文发表与模型性能提升。限时开放订阅通道,提供多种涨点改进方案组合,满足不同研究需求。

Ai缝合怪、助力小伙伴高效发论文 4004

开源模型应用落地-qwen模型小试-Qwen3-8B-快速体验(一)

阿里云推出国内首个集成“快思考”与“慢思考”能力的 Qwen3-8B 大语言模型,以80亿参数和 128K 上下文支持,重塑AI应用边界并助力开发者高效部署

以微薄之力,予他人些许温暖. 2万+

mybatis中test包的使用以及resultMap的使用

前景导入:刚开始学maven框架的时候src目录里面有main和test方法,main目录里面就是我们写的Java代码以及resources,今天使用到了test才有了更进一步的理解。这里我装了junit依赖。这里的使用主要分为3步走。

weixin_44239550的博客 997

使用手机录制rosbag包

使用手机作为便携式数据采集设备来录制rosbag。

weixin_38582851的博客 615

mybatis 的 配置文件及简单test

1... sqlMapperConfig.xml (配置:数据源 和 映射文件 ) 1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE configuration 3 PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 4 ...

NetThief3389的博客 220

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

springboot mybatis和test

1、依赖 <!--web核心依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--mysql数据库驱

BusyMonkey 574

spring-mybatis 结合 配置文件 及 简单 test

1...pom.xml 配置文件 1 <?xml version="1.0" encoding="UTF-8"?> 2 3 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 ...

NetThief3389的博客 228

Mybatis连接数据库配置文件,测试Mybatis的test文件

默认文件名: jdbcconfig.properties Mysql8.0版本用这个 jdbc.driver=com.mysql.cj.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/eesy_mybatis?useSSL=false&characterEncoding=utf-8&useUnicode=true&serverTimezone=Asia/Shanghai jdbc.username=root jdbc.passwo

花火酱的抱枕 756

mybatis (2) 的配置文件 及 简单的 test

1...pom.xml 配置文件 1 <?xml version="1.0" encoding="UTF-8"?> 2 <project xmlns="http://maven.apache.org/POM/4.0.0" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...

NetThief3389的博客 167

mybatis if test 用法_MyBatis实现MySql的批量插入,以及flushCache、useCache的配置

- 上次遇到一个插入效率的问题,同一个事务下,插入1000条数据,主键为递增序列,下面演示:## 1、新增两张表 - 记录序列表CREATE TABLE `sequence` ( `name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, `current_value` int(11) NOT NULL...

weixin_39764379的博客 886

Mybatis的两个xml配置文件和test文件

Dao中的xml文件代码 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="org.example.Dao.StudentDao"> <selec

wflsyf的博客 711

if mybatis or test_MyBatis实现MySql的批量插入,以及flushCache、useCache的配置

- 上次遇到一个插入效率的问题,同一个事务下,插入1000条数据,主键为递增序列,下面演示:## 1、新增两张表 - 记录序列表CREATE TABLE `sequence` ( `name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, `current_value` int(11) NOT NULL...

weixin_36453829的博客 151

mybatis的mapper配置文件中if test遇到的坑

当时传参flag=01&activityflg=02过来,把语句在数据库执行了好多遍返回值都是62,可是在controller的返回值调试时就是返回0,后来找了好久才发现:flag后边的双等不小心写成了单等号。判断是否相等要用==,不等于用!=,否则,如果不小心写成了单等号,等价于赋值语句,会无论如何都会执行内部语句,即本例中的and activiflg = '02' ...

single0515的博客 3069

【MyBatis篇】日志配置文件在src/main/resources 目录下,在src/main/java中书写的代码运行时不出现日志信息,但是 在src/test包下运行代码会出现日志信息

为什么在java包下运行代码不出现日志信息,但是在test中运行代码会出现日志信息, 日志配置文件在src/main/resources 目录下,在src/main/java中书写的代码运行时不出现日志信息,但是 在src/test包下运行mybaties代码会出现日志信息

m0_64231944的博客 385

最完整2019idea创建mybatis之helloworld

完成得目录结构 1.创建项目 接下来一路点击到finish 注意:如果生成太慢建议停止配置以下内容,重新创建,将会很快完成构建 File>Settings>Build,Execution,deployment>Build Tools>Runner -DarchetypeCatalog=internal 2.配置pom.xml文件在de...

小匠心的博客 812

实验五、六 MyBatis配置文件编写及CRUD操作

EE平台企业级开发课程 实验五 实验五、六 MyBatis配置文件编写及CRUD操作

ayslks的博客 939

使用Mybatis的一些基本配置及Mybatis与数据库交互测试验证

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以==使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。

echohye的博客 807
上一篇: spring+servlet+jsp|软件架构技术实验一
下一篇: 笔试练习1 判断回文
PearlyWave
博客等级 码龄8年 8粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值