Mybatis的入门了解

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

一:首先了解什么是Mybatis

MyBatis 是一个可以自定义SQL、存储过程du和高级映射的持久层框架。MyBatis 摒除了大部分的JDBC代码、dao手工设置参数和结果集重获。MyBatis 只使用简单的XML 和注解来配置和映射基本数据类型、Map 接口和POJO 到数据库记录。相对Hibernate和Apache OJB等“一站式”ORM解决方案而言,Mybatis 是一种“半自动化”的ORM实现。

二:mybatis有什么用?

MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。

三:怎么用?

1.在pom.xml文件中配置依赖:
在这里插入图片描述主要的依赖有以下几个:

<!-- mybatis--> 
<dependency> 
<groupId>org.mybatis</groupId> 
<artifactId>mybatis</artifactId> 
<version>3.5.5</version>
 </dependency> 

<!-- jdbc驱动类-->
 <dependency> 
 <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
   <version>5.1.38</version>
    </dependency> 
<!-- 单元测试--> 
<dependency> 
<groupId>junit</groupId> 
<artifactId>junit</artifactId>
 <version>4.12</version> 
 <scope>test</scope>
  </dependency> 
<!-- 小辣椒lombok -->
 <dependency> 
 <groupId>org.projectlombok</groupId> 
 <artifactId>lombok</artifactId> 
 <version>1.18.12</version> 
 <scope>provided</scope>
  </dependency>

2.在数据库中创建表

create database j2005-mybatis; use j2005-mybatis; create table accountbook( id int primary key auto_increment, -- 主键 name varchar(200), -- 账单名称 money double, -- 金额 payway varchar(100), -- 付款|收款方式 createTime date, -- 日期 description varchar(1000) -- 账单描述 );

3.创建实体类(pojo类)

package com.pojo; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.ToString; import java.util.Date;
 @Data
  @NoArgsConstructor
   @AllArgsConstructor 
   @ToString
    public class AB 
 { private Integer id; 
 private String name;
private Double money; 
private String payway; 
private Date createTime; //属性名和字段名一致 
private String description; //ctrl+o 重写父类的方法 //ctrl+i 实现接口中抽象方法 //alt+insert 生成构造方法 get 和 set toString 
}

3.创建接口

package com.mapper;
 import com.pojo.AB; 
 public interface ABMapper { 
 public int addAB(AB ab); 
 //解释:返回值类型是int,插入成功和失败,只返回影响的行数,行数为int类型 // 参数com.pojo.AB类型,添加的是一个AB对象 // 接口中的抽象方法,一定被 public abstract修饰 
 }

4.然后选择配置Mybatis的核心配置文件

<?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>
    <!-- 配置-->


<!--    配置别名-->
    <typeAliases>
        <package name="com.pojo"/>
    </typeAliases>
<!--   配置类型转换 -->
    <typeHandlers>
        <typeHandler handler="com.handler.SexEnumHandler"
                     javaType="com.enum_.SexEnum"/>

    </typeHandlers>
    <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/j2005_mybatis?serverTimezone=Asia/Shanghai"/>
                <property name="username" value="root"/>
                <property name="password" value="12345678"/>
            </dataSource>
        </environment>
    </environments>
    <!--配置映射文件-->
    <mappers>
        <mapper resource="com/mapper/ABMapper.xml"/>
        <mapper resource="com/mapper/UserMapper.xml"/>
        <mapper resource="com/mapper/ClassMapper.xml"/>
        <mapper resource="com/mapper/StudentMapper.xml"/>
    </mappers>
</configuration>

在这里插入图片描述5.之后就进入了对接口类进行操作的配置文件的部分
在这里插入图片描述在这里插入图片描述

<?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.mapper.ABMapper">
    <select id="findAll" resultType="AB">
select *from accountbook
</select>

    <insert id="addAB" parameterType="AB">
        insert into accountbook(name,money,payway,createTime,
        description) values(#{name},#{money},#{payway},#{createTime},#{description})

    </insert>
    </mapper>

7.在所有步骤完成之后就可以进入测试阶段


public class ABMapperTest {

    private SqlSession sqlSession;
    private ABMapper abMapper;
    //通过sqlSessionFactory.openSession();来获取sqlSession,
    @Before
    public void setUp() throws Exception {
        System.out.println("Before = " + true);
        String resource ="mybatis-config.xml";
        InputStream inputStream= Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);
        System.out.println("-------------------sqlSessionFactory-------------------------" + sqlSessionFactory);
   sqlSession=sqlSessionFactory.openSession();

   abMapper=sqlSession.getMapper(ABMapper.class);

    }
//关闭资源
    @After
    public void tearDown() throws Exception {
        System.out.println("----------------------After---------------" + true);
        sqlSession.close();
    }

    @Test
    public void addAB() {
        System.out.println("------------------addab--------------- " + true);
        AB ab =new AB(0,"大虾滑",2.2,"支付宝",new Date(),"裤子");
          int n = abMapper.addAB(ab);
          sqlSession.commit();
        System.out.println("n = " + n);
    }
}

MyBatis基本了解 立即下载

相关推荐

数字化车间智能排产调度挑战赛(一)—— 数学模型

科大讯飞——数字化车间智能排产调度挑战赛。

Lyyyp的博客 5649

Mybatis框架

Mybatis 是spring框架中用于提交数据的一个持久层框架。 它支持动态SQL、存储过程,以及高级映射(一对一,一对多)。降低SQL与程序代码的耦合。 导入Mybatis jar包 <!--mybatis依赖包--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybat

Mr_Jin的博客 2509

杭电oj2023题题目详解(Java版)

杭电oj2023题详解

m0_51065958的博客 978

MyBatis 详解知识点

什么是MyBatis(1)Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态sql,可以严格控制sql执行性能,灵活度高。(2)MyBatis 可以使用 XML 或注解来配置和映射原生信息,将 POJO映射成数据库中的记录,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。(3)通过xml 文件或注解的方式将要执行的各种 statement 配置起

weixin_44099583的博客 243

r语言svr模型_R语言初探强化学习中的马尔可夫模型

强化学习大家这几年应该不陌生,从AlphaGo到AlphaZero让大家见识到了强化学习的力量。我们今天给大家介绍一个在强化学习中核心思维马尔可夫决策过程(MDP)。马尔科夫决策过程是基于马尔科夫论的随机动态系统的最优决策过程。它是马尔科夫过程与确定性的动态规划相结合的产物,故又称马尔科夫型随机动态规划,属于运筹学中数学规划的一个分支。今天我们给大家介绍下马尔可夫决策过程中用到一些算法以...

weixin_28994357的博客 1111

海康VisionMaster零代码开发实战:从PLC工程师到视觉专家的捷径

本文为PLC工程师提供了利用海康VisionMaster视觉平台实现零代码视觉开发的实战指南。文章详细阐述了如何通过图形化流程设计替代传统编程,快速搭建视觉检测应用,并实现与PLC的无缝通讯,是工程师从设备控制迈向视觉系统集成的有效捷径。

weixin_29201859的博客 293

Mybatis一篇从入门到实战

目录1、Mybatis简介1.1、什么是MyBatis1.2、持久化1.3、持久层1.4、为什么需要Mybatis2、MyBatis第一个程序2.1、代码演示2.2、问题说明2.3、SqlSessionFactory源码2.4、Mybatis流程分析3、配置解析3.1、核心配置文件3.2、属性(properties)3.3、设置(settings)3.4、类型别名(typeAliases)3.5、类型处理器(typeHandlers)4.6、对象工厂(objectFactory)4.7、插件(plugins

路边烧卖 2005

Python爬虫实战:使用最新技术抓取百度贴吧帖子内容

本文详细介绍了使用Python最新技术抓取百度贴吧帖子的完整流程。通过库,我们实现了高效的异步爬虫,具备JavaScript渲染、智能反爬应对、数据持久化等高级功能。这个爬虫框架具有良好的扩展性,可以根据具体需求进行功能增强。

2201_76125261的博客 779

mybatis简介

1、mybatis简介 mybatis是一款orm类型的数据持久化框架,将jdbc的手动注册驱动、建立连接、获取sql执行对象、释放连接等操作进行了自动化装配,只需要进行简单的配置就可以实现自动注册驱动、建立连接、释放连接等操作,开发人员只需要关注sql语句的编写就可以了,而不用过多的关注数据库连接问题。mybatis支持自定义 SQL、存储过程以及高级映射,可以通过sql映射文件实现sql语句的编写,支持动态sql,用条件判断进行查询可以实现sql复用。 2、mybatis优势 通过参数映射方式,可以将

清风微凉亦暖心 8947

YOLOv8改进 | 融合篇,YOLOv8改进主干网络为MobileNetV4+CBAM注意机制+Powerful-IoU损失函数(2024 最新IOU),全网首发,实现极限涨点

本文将在 YOLOv8 主干中引入 MobileNetV4 轻量化骨干,同时,在检测头引入 CBAM机制注意力机制,并采用 Powerful-IoU 损失函数作为模型的损失函数,其中,MobileNetV4 通过引入通用反向瓶颈(UIB)搜索块和 Mobie MQA 注意力模块创新设计,实现了模型的轻量级化;同时,MobileNetV4 采用了优化的 NAS 策略,通过粗粒度和细粒度搜索相结合的方法,显著提高了搜索效率并改善了模型质量。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 3784

YOLOv9改进,YOLOv9添加CBAM注意力机制

CBAM是一个简单而有效的注意力模块,用于前馈卷积神经网络。给定一个中间特征图,我们的模块按顺序推断两个独立维度(通道和空间)的注意力图,然后将注意力图乘以输入特征图以进行自适应特征细化。由于 CBAM 是一个轻量级的通用模块,因此它可以无缝集成到任何 CNN 架构中,开销可以忽略不计,并且可以与基础 CNN 一起进行端到端训练。论文链接:(CBAM论文)

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 856

MyBatis——【入门级】简单了解myBatis

1.1 mybatis本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。 mybatis是一个基于Java的持久层框架(半自动),主要包括SQL Maps和Data Access Objects(DAO) ORM:Object Relational Mapping (对象与关系型数据库之间的映射管理框架) 1.2 MyBatis

m0_62019369的博客 476

用 ABAP RAP + XCO 把 Excel 导入业务对象:从弹窗 Action 到 EML 落库与附件清理的完整实践

摘要:本文介绍了在SAP RAP框架下实现Excel批量导入功能的完整方案。通过XCO库的XLSX模块解析Excel文件,结合RAP的行为定义和Fiori Elements界面集成,构建了一个支持试运行、数据校验和自动合并的业务导入功能。方案采用RAP标准范式,包括Action参数设计、EML事务处理、附件管理以及异常消息反馈,实现了从文件上传到数据落库的端到端流程,既保证了系统稳定性,又提升了业务用户体验。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 276

MyBatis入门——了解配置

原文链接:https://www.dubby.cn/detail.html?id=9094 1、mybatis-config.xml 这个配置文件的结构如下: properties settings typeAliases typeHandlers objectFactory plugins environments environment transactionManager dataSo...

明月阁 305

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

MyBatis入门级了解

1、MyBatis是什么 ​ View ------ Controller ----- Service ----- DAO ------ 数据库 jsp/HTML Servlet/SpringMVC Spring jdbc/dbutils/jdbctemplate/mybatis mybatis实际上就是 DAO层的一个解

weixin_48182193的博客 213

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

MyBatis入门及简单了解原理

一.什么是ORM及作用 ORM(Object Relational Mapping,简称ORM)即面向对象和关系数据库之间的映射。面向对象是应用程序执行存放在内存当中的对象,数据库的数据是存放在表中即字节码文件。而ORM所做的操作就是讲两者转换。如何我要找的数据库的字节码转换为我需要的对象,这种操作就是ORM思想。比如实现这一思想的就是学了很久的jdbc,以及刚学习的mybatis等等技术。 二.MyBatis 下载地址:https://github.com/mybatis/mybatis-3/releas

m0_54098516的博客 344

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

对mybatis的了解和入门程序

一、关于mybatis mybatis是持久层框架,任何的持久层框架都是对jdbc的封装。是一个操作数据库的框架。 那么为什么jdbc会渐渐地被取代,mybatis渐渐地被使用呢? 因为jdbc存在一些问题: 例子:使用jdbc查询mysql数据库中用户表的记录。 1、数据库连接,使用时创建,不使用立即释放,对数据库进行频繁连接开启和关闭,造成数据库资源浪费,影响数据库性能 ​ 设想:使用数据库连接池管理数据库连接 2、将sql语句硬编码到java代码中,如果sql语句修改,需要重新编译java代码,不利于

weixin_49109957的博客 293

MyBatis系列-入门了解

MyBatis:持久层框架 前言 之前有看过和学习一些mybatis的文章和内容,但是没有去写过文章记录下,现在借鉴b站的狂神视频和官方文档看来重新撸一遍入门。有错误请多指教。 内容 数据访问层-相当于之前web项目中dao层,数据库的交互,包括增删改查; 持久化就是将数据在持久状态和瞬时状态转化的过程。内存是断电即失。所以需要数据的持久化。 JDBC技术:Connection、PrepareSt...

weixin_44304387的博客 81

MyBatis 快速入门教程,快速了解 MyBatis

MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。

ubuntulinuxjava的专栏 231

MyBatis的基本了解及入门程序

MyBatis的基本了解及入门程序 一、介绍 pojo: 不按mvc分层,只是java bean有一些属性,还有get, set方法。 domain: 不按mvc分层,只是java bean有一些属性,还有get, set方法。 po:用在持久层,还可以再增加或者修改的时候, 从页面直接传入action中,它里面的java bean 类名等于表名,属性名等于表的字段名,还有对应的get,...

不准动我的小老弟 380

MyBatis 入门到精通(一) 了解MyBatis获取SqlSession

初识     MyBatis是一款一流的支持自定义SQL、存储过程和高级映射的持久化框架。MyBatis几乎消除了所有的JDBC代码,也基本不需要手工去设置参数和获取检索结果。MyBatis能够使用简单的XML格式或者注解进行来配置,能够映射基本数据元素、Map接口和POJOs(普通java对象)到数据库中的记录。 简介     每个MyBatis应用程序主要都是使用SqlS

李达 2952

MyBatis 入门时必须了解的知识点

无论是哪种方式,MyBatis 都是通过提供的 SqlSession 来执行 SQL 语句的。注解方式可以让我们直接在接口方法上使用注解,而不需要编写映射文件。在接口方法上使用注解可以让代码更加简洁,但是对于复杂的 SQL 语句,注解方式可能不太适合。在 XML 文件中,我们需要定义 SQL 语句和映射关系,然后通过 MyBatis 的接口来调用 SQL 语句。6)调用 DAO 接口方法执行 SQL 语句。4)在 DAO 接口方法上使用注解。5)定义 DAO 接口的实现类。3)定义 DAO 接口。

weixin_42642916的博客 451

MyBatis入门基础了解

1.开发工具 IJIDEA IJ:IntelliJ:智能的 IDEA:联想 craete from achetype 从 骨架/模板/原型 创建 ArtifactID:模块名称 Idea Project 能有Artifact 1个 MyEclipse:WorkSpace 工作区 1工作区含有N个项目 ...

weixin_30871701的博客 72

MyBatis入门——了解基本概念

原文链接:https://blog.dubby.cn/detail.html?id=9093 1. 了解MyBatis 1.1 MyBatis是什么? 使用Java操作数据库的话,JDK给我们提供了一层对各个数据库的封装,也就是JDBC,它屏蔽了数据库之间的差异,使用JDBC可以统一操作。但是他长期以来被人诟病的就是重复代码太多。封装参数需要一个一个set,还需要你把ResultSet一...

明月阁 1091
上一篇: js页面跳转传值
下一篇: 如何创建springboot项目
豆芋
博客等级 码龄6年 3粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值