首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >简单认识MyBatis

简单认识MyBatis

作者头像
晓果冻
发布于 2022-09-08 06:01:08
发布于 2022-09-08 06:01:08
23200
代码可运行
举报
运行总次数:0
代码可运行
MyBatis是什么

MyBatis是一款持久层框架,支持自定义SQL、存储过程和高级映射。 MyBatis免除所有JDBC代码以及设置参数和获取结果集的工作 MyBatis可以通过简单的XML或注解来配置和映射原始类型、接口和JAVAPOJO为数据库中的记录。

MyBatis优点和缺点

优点: 基于SQL语句编程,相当灵活,不会对程序和数据库造成侵入,通过XML写SQL,sql与代码低耦合,便于统一管理,还可以书写动态SQL语句,便于重用。 与JDBC相比,免除所有JDBC代码设置参数及获取结果的工作,不需要手动链接,消除了大量冗余代码。 兼容性强,因为是靠JDBC链接数据库的,所有JDBC支持的数据库,MyBatis都支持。 完美兼容Spring。 缺点: SQL编写工作量大,对开发人员SQL功底有一定要求。 迁移性差,SQL语句依赖于数据库

resultType和resultMap得区别

  1. resultType:直接标识返回类型,包括基本类型和复杂数据类型。

resultMap:外部resultMap定义得引用,通过对应的外部resultMap的id,表示结果映射到哪个resultMap上,一般用于字段名和属性名不一致的情况,或者需要做复杂的联合查询以便自由控制映射 结果俩者的关链 当进行查询时,查询出来的每个字段都会放在一个Map里,当查询元素返回属性是resultType的时候,会根据键值对取出value来赋值给指定的属性。其实MyBatis的每个查询映射的返回类型都是resultMap,只是当我们使用resultType的时候,会自动把对应的值赋给所指定的对象属性,当使用resultMap时候,因为map不是很好的表示领域,我们就进一步的转化为对应的实体对象。resultMap主要作用于复杂的联合查询上。 注意:

  1. resultMap和resultType只能同时存在一个。
  2. 当resultType返回的是集合类型,应该写具体集合中元素的类型,不应该返回集合本身。如
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
List<String> selectAll();
那么xml中resultType返回值应该是resultType="java.util.List"
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
谷歌机器学习速成课程系列一
谷歌tensorflow官方推出了免费的机器学习视频课,总计25个课时,支持中英文语言播放、大量练习、实例代码学习,是初学tensorflow与机器学习爱好者必看的良心精品,课程授课的老师都是来自谷歌AI团队与Tensorflow框架的开发团队,可以说是唯一的业界良心免费教程。从本文开始,将推出一系列的文章介绍课程各个章节内容与代码演示部分:在开始之前,请先安装好tensorflow1.7 + python3.6的开发环境,关于开发环境安装可以参考下面的文章:
OpenCV学堂
2018/07/26
4180
谷歌机器学习速成课程系列一
TensorFlow
合适的特征应该是具体且可量化的。美观程度是一种过于模糊的概念,不能作为实用特征。美观程度可能是某些具体特征(例如样式和颜色)的综合表现。样式和颜色都比美观程度更适合用作特征。
天地一小儒
2022/12/28
2620
Python 数据科学手册 5.1 什么是机器学习
在我们查看机器学习方法的各种细节之前,先了解什么是机器学习,什么不是。机器学习通常被归类为人工智能的一个子领域,但是我发现分类往往会首先产生误导。机器学习的研究肯定来自于这一背景下的研究,但在机器学习方法的数据科学应用中,将机器学习视为构建数据模型的手段更有帮助。
ApacheCN_飞龙
2022/12/01
2950
机器学习介绍
设计和分析一些让计算机可以自动“学习“的算法。机器学习算法是一类从庞大的数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。
None_Ling
2018/10/24
8220
机器学习介绍
最全机器学习种类讲解:监督、无监督、在线和批量学习都讲明白了
这些标准之间互相并不排斥,你可以以你喜欢的方式将其任意组合。例如,现在最先进的垃圾邮件过滤器可能是使用深度神经网络模型对垃圾邮件和常规邮件进行训练,完成动态学习。这使其成为一个在线的、基于模型的、监督式学习系统。
IT阅读排行榜
2018/10/25
1.6K0
最全机器学习种类讲解:监督、无监督、在线和批量学习都讲明白了
可扩展机器学习——分类——点击率预测(Click-through Rate Prediction)
注:这是一份学习笔记,记录的是参考文献中的可扩展机器学习的一些内容,英文的PPT可见参考文献的链接。这个只是自己的学习笔记,对原来教程中的内容进行了梳理,有些图也是引用的原来的教程,若内容上有任何错误,希望与我联系,若内容有侵权,同样也希望告知,我会尽快删除。这部分本应该加上实验的部分,实验的部分在后期有时间再补上。 可扩展机器学习系列主要包括以下几个部分: 概述 - Spark分布式处理 - 线性回归(linear Regression) - 梯度下降(Gradient Descent)
felixzhao
2018/03/20
1.1K0
可扩展机器学习——分类——点击率预测(Click-through Rate Prediction)
机器学习面试篇
数据集是机器学习的基础,它包括了用于训练和测试模型所需的数据。数据集通常以矩阵的形式存在,其中每一行代表一个样本(或实例),每一列代表一个特征(或属性)。每个样本都包含了对应于各个特征的数值,数据集通常会被划分为训练集和测试集,有时还包括验证集。训练集用于训练模型,测试集用于评估模型的性能,而验证集则用于在训练过程中调整模型的参数。
@小森
2024/05/13
1110
机器学习面试篇
【官方中文版】谷歌发布机器学习术语表(完整版)
【新智元导读】Google 工程教育团队已经发布了多语种的 Google 机器学习术语表,该术语表中列出了一般的Machine Learning术语和 TensorFlow 专用术语的定义。语言版本包
新智元
2018/03/21
1.2K0
【官方中文版】谷歌发布机器学习术语表(完整版)
Scikit-Learn 与 TensorFlow 机器学习实用指南学习笔记1 — 机器学习基础知识简介
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/red_stone1/article/details/84289348
红色石头
2019/05/25
4450
机器学习三人行(系列一)----机器学习花样入门
写在前面 深度学习如火如荼,作为一个IT技术人员,不搞一下深度学习,总有一种活在上个世纪的感觉,因此笔者准备认认真真的搞一下深度学习,努力跟上时代的步伐。话说基础不牢,地动山摇,如果没有机器学习的基础知识,要想学好深度学习,还是有一定的挑战的。所以接下来的一段时间,笔者会每周在微信公众号“智能算法”更新一篇深度学习相关文章。该系列大致分两部分:机器学习的基础和神经网络深度学习。总体来讲,笔者的初衷是通过这个系列文章,使自己和大家能基本了解以及能够应用相关知识在自己的领域中能解决一定的实际问题。如果感兴趣,欢
智能算法
2018/04/03
7870
机器学习三人行(系列一)----机器学习花样入门
动态 | 谷歌发布机器学习规则: 关于机器学习工程的最佳实践(上)
本文档旨在帮助已掌握机器学习基础知识的人员从 Google 机器学习的最佳实践中受益。以下为上篇,包含术语、概览以及在进行机器学习之前的第 1-20 条规则。
AI科技评论
2018/07/26
5610
机器学习算法中分类知识总结!
本文将介绍机器学习算法中非常重要的知识—分类(classification),即找一个函数判断输入数据所属的类别,可以是二类别问题(是/不是),也可以是多类别问题(在多个类别中判断输入数据具体属于哪一个类别)。与回归问题(regression)相比,分类问题的输出不再是连续值,而是离散值,用来指定其属于哪个类别。分类问题在现实中应用非常广泛,比如垃圾邮件识别,手写数字识别,人脸识别,语音识别等。
Datawhale
2020/10/23
6640
机器学习算法中分类知识总结!
机器学习术语表
机器学习术语表:https://developers.google.com/machine-learning/glossary/ 机器学习术语表,即机器学习专业词典。 划重点,童鞋们!该表按A-Z字母排列,这里只列出A-C字母的机器学习术语表。需要全文的同学,请翻阅至最下,有福利...... A A/B 测试 (A/B testing) 一种统计方法,用于将两种或多种技术进行比较,通常是将当前采用的技术与新技术进行比较。A/B 测试不仅旨在确定哪种技术的效果更好,而且还有助于了解相应差异是否具有显著的统计意
Amusi
2018/04/12
9250
机器学习术语表
开发者必看:超全机器学习术语词汇表!
来源:机器之心 本文长度为12243字,建议阅读8分钟 本文编译自谷歌开发者机器学习术语表项目,介绍了该项目所有的术语与基本解释。 A 准确率(accuracy) 分类模型预测准确的比例。在多类别分类中,准确率定义如下: 在二分类中,准确率定义为: 激活函数(Activation function) 一种函数(例如 ReLU 或 Sigmoid),将前一层所有神经元激活值的加权和输入到一个非线性函数中,然后向下一层传递该函数的输出值(典型的非线性)。 AdaGrad 一种复杂的梯度下降算法,重新
数据派THU
2018/01/30
4.1K0
开发者必看:超全机器学习术语词汇表!
《Scikit-Learn与TensorFlow机器学习实用指南》 第1章 机器学习概览什么是机器学习?为什么使用机器学习?机器学习系统的类型批量和线上学习基于实例vs基于模型学习机器学习的主要挑战测
---- 本书翻译已加入ApachCN的开源协作项目,见 https://github.com/apachecn/hands_on_Ml_with_Sklearn_and_TF/tree/dev/docs。 我负责翻译的是第一章和第二章。 ApacheCN_飞龙转载了后面的章节,大家可以去他的页面查看,《第3章 分类》链接 ---- 下载本书和代码:https://www.jianshu.com/p/9efbae6dbf8e 本书自2017年4月9日出版,便长期占据美国亚马逊Compu
SeanCheney
2018/04/24
1.8K0
《Scikit-Learn与TensorFlow机器学习实用指南》 第1章 机器学习概览什么是机器学习?为什么使用机器学习?机器学习系统的类型批量和线上学习基于实例vs基于模型学习机器学习的主要挑战测
可扩展机器学习——分类——点击率预测(Click-through Rate Prediction)
注:这是一份学习笔记,记录的是参考文献中的可扩展机器学习的一些内容,英文的PPT可见参考文献的链接。这个只是自己的学习笔记,对原来教程中的内容进行了梳理,有些图也是引用的原来的教程,若内容上有任何错误,希望与我联系,若内容有侵权,同样也希望告知,我会尽快删除。这部分本应该加上实验的部分,实验的部分在后期有时间再补上。
felixzhao
2019/01/31
1.9K0
可扩展机器学习——分类——点击率预测(Click-through Rate Prediction)
机器学习中的特征工程总结!
传统编程的关注点是代码。在机器学习项目中,关注点变成了特征表示。也就是说,开发者通过添加和改善特征来调整模型。“Garbage in, garbage out”。对于一个机器学习问题,数据和特征往往决定了结果的上限,而模型、算法的选择及优化则是在逐步接近这个上限。特征工程,顾名思义,是指从原始数据创建特征的过程。
Datawhale
2020/10/27
2.2K0
机器学习中的特征工程总结!
什么是机器学习
1. 引言(Introduction) 1.1 Welcome 1.2 什么是机器学习(What is Machine Learning) 1.3 监督学习(Supervised Learning) 1.4 无监督学习(Unsupervised Learning) 2 单变量线性回归(Linear Regression with One Variable) 2.1 模型表示(Model Representation) 2.2 代价函数(Cost Function) 2.3 代价函数 - 直观理解1(Cost Function - Intuition I) 2.4 代价函数 - 直观理解2(Cost Function - Intuition II) 2.5 梯度下降(Gradient Descent) 2.6 梯度下降直观理解(Gradient Descent Intuition) 2.7 线性回归中的梯度下降(Gradient Descent For Linear Regression) 3 Linear Algebra Review 3.1 Matrices and Vectors 3.2 Addition and Scalar Multiplication 3.3 Matrix Vector Multiplication 3.4 Matrix Matrix Multiplication 3.5 Matrix Multiplication Properties 3.6 Inverse and Transpose
用户2188327
2019/10/28
8210
Sklearn、TensorFlow 与 Keras 机器学习实用指南第三版(一)
2006 年,Geoffrey Hinton 等人发表了一篇论文,展示了如何训练一个能够以最先进的精度(>98%)识别手写数字的深度神经网络。他们将这种技术称为“深度学习”。深度神经网络是我们大脑皮层的(非常)简化模型,由一系列人工神经元层组成。在当时,训练深度神经网络被普遍认为是不可能的,大多数研究人员在 1990 年代末放弃了这个想法。这篇论文重新激起了科学界的兴趣,不久之后,许多新论文证明了深度学习不仅是可能的,而且能够实现令人惊叹的成就,其他任何机器学习(ML)技术都无法匹敌(在巨大的计算能力和大量数据的帮助下)。这种热情很快扩展到许多其他机器学习领域。
ApacheCN_飞龙
2024/05/24
1.3K0
Sklearn、TensorFlow 与 Keras 机器学习实用指南第三版(一)
机器学习算法概览
机器学习是人工智能(AI)领域的重要分支,它使得计算机系统能够通过数据进行学习并做出预测或决策。机器学习算法可以根据数据的类型、学习的方式以及所需的反馈进行分类,主要包括监督学习、无监督学习和强化学习三种类型。每种类型的算法都有不同的应用场景和实现方式。本文将对这些机器学习算法进行详细的解释,并通过具体的例子来说明其应用。
LucianaiB
2025/01/12
1660
推荐阅读
相关推荐
谷歌机器学习速成课程系列一
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档