Mybatis(1)-入门使用

1.Mybatis入门 Mybatis入门+jdbc了解+数据库连接池(共享单车)+lombok(简化java开发) 阅读详情

Mybatis-入门使用

①导入MyBatis依赖(此处为maven项目)
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
     <groupId>org.mybatis</groupId>
     <artifactId>mybatis</artifactId>
     <version>3.5.6</version>
 </dependency>
②导入JDBC驱动包依赖(此处为mysql-connector-java)
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.25</version>
</dependency>
③新建mybatis配置文件(此处为 mybatis-config.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="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://127.0.0.1:3306/sakila"/>
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="mybatis/ActorMapper.xml"/>
    </mappers>
</configuration>

④新建mapper配置文件及mapper接口

mybatis/ActorMapper.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="com.hs.mybatis.mapper.ActorMapper">

    <resultMap id="actorResultMap" type="com.hs.mybatis.bean.Actor">
        <id column="actor_id" property="actorId"/>
        <result column="first_name" property="firstName"/>
        <result column="last_name" property="lastName"/>
    </resultMap>

    <select id="selectOneActor" resultMap="actorResultMap">
        select actor_id, first_name,last_name from actor where actor_id = #{actorId}
    </select>
</mapper>

com.hs.mybatis.mapper.ActorMapper.java

package com.hs.mybatis.mapper;

import com.hs.mybatis.bean.Actor;
import org.apache.ibatis.annotations.Mapper;

//@Mapper
public interface ActorMapper {

    Actor selectOneActor(int actorId);
}

对应bean

package com.hs.mybatis.bean;

public class Actor {
    private int actorId;
    private String firstName;
    private String lastName;

    public int getActorId() {
        return actorId;
    }

    public void setActorId(int actorId) {
        this.actorId = actorId;
    }

    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    @Override
    public String toString() {
        return "Actor{" +
                "actorId=" + actorId +
                ", firstName='" + firstName + '\'' +
                ", lastName='" + lastName + '\'' +
                '}';
    }
}

⑤测试

com.hs.mybatis.Main.java

package com.hs.mybatis;

import com.hs.mybatis.bean.Actor;
import com.hs.mybatis.mapper.ActorMapper;
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;

public class Main {
    public static void main(String[] args) {
        String resource = "mybatis-config.xml";
        SqlSession session = null;
        try {
            InputStream inputStream = Resources.getResourceAsStream(resource);
            SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
            System.out.println(sqlSessionFactory);
            session = sqlSessionFactory.openSession();
            ActorMapper actorMapper = session.getMapper(ActorMapper.class);
            Actor actor = actorMapper.selectOneActor(1);
            System.out.println(actor);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (session != null) {
                session.close();
            }
        }

    }
}


Mybatis官网:
https://mybatis.org/mybatis-3/zh/getting-started.html

ADS新手必看:ICCAP数据导入与导出CSV的完整流程(附常见问题解决) 本文为ADS新手详细讲解了如何将ICCAP测试数据导入ADS进行仿真分析,并导出为通用CSV格式的完整流程。内容涵盖文件格式解析、导入设置、数据验证、处理技巧及常见问题排查,重点解决了数据文件导入过程中的兼容性与单位映射等核心难点,帮助射频工程师高效连接测量与仿真环节。 阅读详情

相关推荐

wpa_supplicant EAPOL状态机分析

wpa_supplicant EAPOL状态机分析

加油鸭 1477

【Mybatis从0到1学习|第一天】mybatis入门知识

【代码】【Mybatis从0到1学习|第一天】mybatis入门知识。

shenqibaobao的博客 481

复现基于PYNQ-Z2的手写数字识别卷积加速器设计

来源雪天鱼。

eachanm的博客 968

1、mybatis入门案例

mybatis 1、mybatis概述 mybatis是一个持久层框架,用java编写的。 它封装了jdbc操作的很多细节,使开发者只需要关注sql语句本身,而无需关注注册驱动,创建连接等繁杂过程 它使用了ORM思想实现了结果集的封装。 ORM: ​ Object Relational Mappging 对象关系映射 ​ 简单的说: ​ 就是把数据库表和实体类及实体类的属性对应起来 ​ 让我们可以操作实体类就实现操作数据库表。 ​ user User ​ id userId ​

weixin_44230693的博客 263

【Konva】解决图形加入group后无法获取到绝对坐标,以及group内绘制新图形坐标偏移的问题

解决konva绘图开发时“图形加入group后坐标不会变动,无法获取到绝对坐标”的问题

近10年前端开发工作经验,为你分享日常经验所得 1500

ArcGIS中根据DEM和地形起伏度进行地貌分类划分

大家好我是GIS蒲公英,数字高程模型(digital elevation model, DEM)经常都被用到专题地图的底图中,下面来我们来交流一下仅选择海拔和地形起伏度两个指标,用DEM来进行地貌类型的自动判别划分

GIS蒲公英的博客 3万+

《Mybatis入门到精通》——1. Mybatis入门

Mybatis学习前—— 关注点分离 它是最经典的架构设计原则之一。 1. 架构中需要变化的部分, 一定要能够非常清晰地被识别出来 。 2. 若架构中某部分发生变化,则该变化不会影响到其他部分。 3. 若架构中某部分需要扩展,则该扩展也不会影响到其他部分 。 架构能做到关注点分离,才能做到真正意义上的解耦;最经典的的就是“前后端分离”; 前后端分离 针对前端,需要将界面展现与数据展现相分离: 针对后端,不仅要清晰地理解业务逻辑,善于将数据进行合理的建模,最终还要做到将业务逻辑与数据逻辑相分离

娜娜米的博客 1459

Windows 11 系统部署 OpenClaw 完整指南:从零到一的 AI 助手搭建

OpenClaw(昵称“小龙虾”)是一款开源 AI 代理工具,定位为“AI 指挥官”,能够接收指令、调用工具并自动化处理任务。它支持对接国内外多款大模型,所有数据本地存储,兼顾实用性与安全性。本文将详细介绍在 Windows 11 系统上部署 OpenClaw 的完整流程。OpenClaw 在 Windows 11 上的部署虽然有一定技术门槛,但按照本文的步骤操作,大多数用户都能顺利完成安装。环境准备是基础:确保 Node.js ≥22 版本,使用管理员权限操作安装方式灵活选择。

weixin_41484939的博客 801

【mybatis - 1】一文入门mybatis源码

MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。应该是目前最火的ORM框架。它的实现原理非常简单。我以最简单的代码示例来帮助大家入门mybatis源码。

叁滴水 的博客 3953

DCDC电路断电时放电波形发生震荡和电压跳变问题,如何解决?

DCDC电路断电时放电波形发生震荡和电压跳变问题: 做的一个项目需要用单片机ADC采集电压,要让单片机感应到电压降到3.1V开始往FLASH里存数据,单片机2.4V基本上就工作不了,(根据单片机手册的,擦写的时间在40mS在左右)所以3.1V降到2.4V的时间必须要大于40mS岁以上,在单片机VCC处加了一个100nF的电容,理论仿真下来150mS左右发现存不进去,用示波器抓了一下波形,发现放电时震荡很严重,实际3.1V到2.4V时间只有10ms左右,这个肯定存不进去; 请教师傅说是应该时前级DCDC开关电

**My Coding Family** 1970

生成模型实战 | MuseGAN详解与实现

人工智能音乐生成领域已引起了广泛关注,MuseGAN 是其中一个重要的模型。本节我们将使用 JSB Chorales 数据集来训练 MuseGAN,该数据集包含巴赫创作的四音轨合唱曲。在生成图像时,生成器使用的是来自潜在空间的单一噪声向量来生成不同格式的内容;而在 MuseGAN 中,生成器将使用四个噪声向量来生成一段音乐,旨在增强音乐生成过程中的可控行和多样性。每个噪声向量代表音乐的不同方面,通过单独调整这些向量,模型可以生成更复杂、更细腻的音乐作品。

盼小辉丶的博客 6590

MyBatis入门1

mybatis是什么?有什么特点?它是一款半自动的ORM持久层框架,具有较高的SQL灵活性,支持高级映射(一对一,一对多),动态SQL,延迟加载和缓存等特性,但它的数据库无关性较低什么是ORM?为什么mybatis是半自动的ORM框架?

mn0402的博客 1096

【系统安全】Windows内核权限提升漏洞(CVE-2024-30088)

CVE-2024-30088是Windows内核提权漏洞,由越南安全研究员@Bùi Quang Hiếu详细分析。漏洞发生在AuthzBasepCopyoutInternalSecurityAttributes函数中,该函数在复制SecurityAttributesList时会使用用户提供的指针,在校验及复制期间存在时间差,导致存在TOCTOU漏洞。

李同學AI安全 1325

深入浅出MyBatis【1】MyBatis入门

​ 2001年,Clinton Begin发起了一个名为iBATIS的开源项目,最初侧重于密码软件的研发,后来发展成为一款基于Java的持久层框架。​ 2004年,Clinton将iBATIS的名字和源码捐赠给了Apache软件基金会。​ 2010年,核心开发团队决定离开Apache软件基金会,并且将iBATIS改名为MyBatis。​ MyBatis是一款优秀的支持自定义SQL查询、存储过程和高级映射的持久层框架,消除了几乎所有的JDBC代码和参数的手动设置以及结果集的检索。

mf97532的博客 630

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Mybatis快速入门1

JUnit 是一个用于编写和运行单元测试的 Java 框架。单元测试是针对软件中的最小可测试单元(通常是方法)进行测试的过程。JUnit 提供了一组注解和断言方法,可以帮助开发者编写和运行测试用例,并且可以方便地进行测试结果的断言和验证。添加 JUnit 依赖首先需要将 JUnit 框架添加到项目的依赖中。可以通过 Maven、Gradle 或手动下载 JUnit JAR 文件来添加依赖。编写测试类创建一个测试类,并使用@Test注解标记测试方法。

alsby的博客 590

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

MyBatis学习总结(1)——MyBatis快速入门

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34379433的博客 184

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Chp1-Mybatis入门

Mybatis是一款开源、轻量级的数据持久层框架,用于简化JDBC开发MyBatis 内部封装了 JDBC,简化了加载驱动、创建连接、创建 statement 等繁杂的过程,开发者只需要关注 SQL 语句本身支持定制化 SQL、存储过程以及高级映射,可以在实体类和 SQL 语句之间建立映射关系,是一种半自动化的 ORM 实现。

qq_44042106的博客 450

Mybatis入门,day1

Mybatis入门,day1

weixin_67485772的博客 494

mybatis(1)mybatis入门程序

1、对原生态jdbc程序中问题总结 package com.xdy.mybatis.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;

北风 622

Mybatis从入门到精通1-1

2,Mybatis 2.1 Mybatis概述 2.1.1 Mybatis概念 MyBatis 是一款优秀的持久层框架,用于简化 JDBC 开发 MyBatis 本是 Apache 的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github 官网:https://mybatis.org/mybatis-3/zh/index.html 持久层:

helpluozhao123的博客 219

MyBatis入门(1)

1MyBatis是一块优秀的持久层框架,用于简化JDBC的开发。2MyBatis本是Apache的一个开源项目iBatis,2010年这个项目由Apache迁移到了google code,并且改名为MyBaits。2013年11月迁移到Github。3官网MyBatis中文网。4持久层:指的就是持久化操作的层,通常指数据访问层(dao),是用来操作数据库的。简单来说,MyBatis是更简单完成程序和数据库交互的框架,也就是更简单的操作和读取数据库工具。

cool_tao6的博客 1268

MyBatis学习总结(1)——MyBatis快速入门

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34128534的博客 119

1.MyBatis入门

mybatis框架 文章目录mybatis框架索引1. 什么是框架?2. 三层架构3. 持久层技术解决方案4. mybatis的概述5. mybatis的入门5.1 mybatis的环境搭建5.2 环境搭建的注意事项:5.3 mybatis基于注解的入门案例:5.4 mybatis基于Dao实现类:5.5 MyBatis启动类分析6. 自定义Mybatis的分析:7. 自定义Mybatis的分析: 索引 第一天:mybatis入门 mybatis的概述 mybatis的环境搭建 mybatis入门案例 自

KaiSaming的博客 222

【MyBatis从入门到入土】1 - MyBatis入门

文章目录MyBtis从入门到入土0 基础1 简介1.1 什么是Mybatis1.2 持久化1.3 持久层1.4 为什么需要MyBatis2 第一个MyBatis程序2.1 搭建环境2.2 创建一个新模块Modul2.3 编写代码2.4 测试 MyBtis从入门到入土 0 基础 学习MyBtis之前,需要对一下技术有一定的了解: Java基础 Mysql JDBC:Java Database Connectivity Maven Junit 1 简介 1.1 什么是Mybatis 简介 Mybatis官

Cap220590的博客 433

MyBatis 入门学习1

MyBatis 学习1 简介 MyBatis 基于 java 的持久层框架,它内部封装了 JDBC,使开发者只需要关注 SQL 语句本身, 而不需要花费精力去处理加载驱动、创建连接、创建 statement 等繁杂的过程。 MyBatis 通过 XML 或注解的方式将要执行的各种 statement 配置起来,并通过 Java 对象和 statement 中 SQL 的动态参数进行映射生成最终执行的 SQL 语句,最后由 MyBatis 框架执行 SQL 并将结果映射为 Java 对象并返回。 入门案例 创

qq_39376487的博客 291

MyBatis 1MyBatis配置及入门

Mybatis配置及入门 学习于 https://study.163.com/course/courseLearn.htm?courseId=1005847005#/learn/video?lessonId=1053169135&courseId=1005847005 项目结构 1. CREATE TABLE empinfo ( eid INT (10) PRIMARY ...

m0_43443133的博客 156
上一篇: 5.1.0-Reaper 效果器插入与发送以及自动化控制
下一篇: Mybatis(2)-本地缓存(一级缓存)的使用和原理
sql2008help
博客等级 码龄11年 80粉丝 145原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值