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 立即下载

相关推荐

QT5.14.2+VS2019安装配置教程Windows

QT5.14.2+VS2019安装使用教程Windows前言一. QT的下载与安装1. QT的下载2. QT的安装二. 配置Visual Studio编译器环境1. 扩展工具下载2. 扩展工具配置 前言 由于Visual Studio 的功能强大,很多开发人员比较熟悉使用,所以可以通过将QT配置到Visual Studio中进行开发。 一. QT的下载与安装 1. QT的下载 QT5.14.2下载地址 2. QT的安装 断开网络!断开网络!!断开网络!!! 安装QT之前,需要断开电脑的网络连接,这样就

Zander0的博客 7248

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

FPGA新手避坑指南:手把手教你搞定RTL8211千兆网PHY的时序配置(附Verilog代码)

本文详细解析了FPGA与RTL8211千兆网PHY芯片的时序配置问题,重点介绍了TXDLY/RXDLY引脚设置、FPGA发送端和接收端的Verilog实现,以及调试与验证的完整流程。通过硬件电路设计和代码示例,帮助开发者解决网络连接不稳定、丢包等常见问题,提升千兆网通信的稳定性。

weixin_28732953的博客 542

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

从BAM到bigWig:用UCSC工具链完成测序数据可视化的完整流程

本文详细介绍了从BAM文件到bigWig格式的基因组数据可视化完整流程,涵盖UCSC工具链配置、文件格式转换、参数优化及常见问题解决方案。通过实战指南帮助研究人员高效完成测序数据可视化,特别适合ChIP-seq和RNA-seq数据分析。

weixin_29309213的博客 707

FTPClient使用中,碰到SocketTimeoutException 坑

ftpclient设置soTimeout无效

u010379794的博客 1951

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

《计算机网络》课程大作业- 《小区局域网的设计和规划》

8.1首先,在满足用户需求方面,通过详细的需求分析,充分考虑了居民和物业管理的不同业务需求。对于居民,无论是日常的高清视频播放、在线游戏、远程办公还是智能家居设备的连接,网络都能提供稳定的高速带宽支持。从有线网络的千兆以太网技术保障稳定的有线连接,到无线网络采用 Wi - Fi 6 技术确保无线覆盖区域的高速和低延迟,满足了居民多样化的娱乐和生活需求。对于物业管理,安防监控系统的实时数据传输、物业办公自动化系统的流畅运行以及社区信息的及时发布等业务,都有针对性的网络设计。

lisangsimida的博客 2599

第一个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

本地部署了qwen2.5:0.8b ,对接openclaw 后,电脑卡的要死

OpenClaw 强制 16k 上下文 + 无限历史 + Agent 调度,把 0.8b 压垮。按上面配置:轻量化 + 限历史 + 驻留显存,电脑立刻不卡。

专注于技术研发行业技术主要有AI人工智能视觉识别、物联网技术、电商平台、app原生技术、微信小程序、鸿蒙语言开发、办公企业oa、ERP等,致力于做东半球最优秀的程序员 978

数字后端:版图基础seal ring

seal ring结构是为了防止划片或封装对芯片造成破坏,从而在芯片与划片道(scribe line)之间添加的一圈保护环

m0_61544122的博客 1万+

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

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

weixin_44239550的博客 997

【ATC/DTC方法第一期】经典平均/昼夜温度周期ATC/DTC方法介绍(含Python代码实现)

【ATC/DTC方法第一期】经典平均/昼夜温度周期ATC/DTC方法介绍(含Python代码实现)

WW、forever的博客 485

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

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

springboot mybatis和test

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

BusyMonkey 574

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

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

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

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、付费专栏及课程。

余额充值