当前位置: 首页 > news >正文

(十四)JavaWeb后端开发——MyBatis

目录

1.MyBatis概述

2.MyBatis简单入门

3.JDBC(了解即可)

4.数据库连接池​

5.lombok 

6.MyBatis基本操作

7.XML映射文件


1.MyBatis概述

MyBatis是一款优秀的持久层(DAO)框架,用于简化JDBC的开发,和数据库打交道。它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作

比如说如果想要查询所有用户的数据,普通SQL语句是select * from users;而MyBatis就是通过java语句操作数据库查询

2.MyBatis简单入门

Day08-14. Mybatis-入门-快速入门程序_哔哩哔哩_bilibili

3.JDBC(了解即可)

JDBC:(Java DataBase Connectivity),就是使用Java语言操作关系型数据库的一套API,Java程序想要操作MySQL、Oracle等数据库就得通过JDBC这套API实现,但是各个数据库厂商的底层实现是不同的,所以JDBC仅仅只是提供了接口,由各个厂商去实现,封装在一起也就是驱动

JDBC的缺点:不方便,资源浪费,相比之下SpringBoot+MyBatis效率高很多,写在配置文件中

现在都是用MyBatis,不会去用原始的JDBC

4.数据库连接池

需要学习如何切换数据库连接池

5.lombok 

Lombok是一个实用的Java类库,能通过注解的形式自动生成构造器、getter/setter、equals、hashcode、toString等方法,并可以自动化生成日志变量,简化java开发、提高效率。

使用场景:数据库配套的use类,明明只需要tostring方法但却需要生成一个完整的Javabean类,很麻烦,此时就可以使用lombok的注解优化

6.MyBatis基本操作

public interface EmpMapper {//根据主键删除数据@Delete("delete from emp where id = #{id}")public int delete(Integer id);//返回值是影响的记录数,也可以不需要返回值//新增员工@Insert("insert into emp(username, name, gender, image, job, entrydate, dept_id, create_time, update_time)" + " values (#{username}, #{name}, " +"#{gender}, #{image}, #{job}, #{entrydate}, #{dept_id}, #{create_time}, #{update_time} )");public void insert(User emp);//更新员工//查询员工
}

7.XML映射文件

使用注解来映射简单语句会使代码显得更加简洁,但对于稍微复杂一点的语句,Java 注解不仅力不从心,还会让你本就复杂的 SQL语句更加混乱不堪,因此,如果你需要做一些很复杂的操作,最好用 XML 来映射语句

8.动态SQL

随着用户的输入或外部条件的变化而变化的SQL语句,我们称为动态SQL,也就是学习各种动态SQL 标签


http://www.mrgr.cn/news/67527.html

相关文章:

  • ubuntu 22.04 server 安装 和 初始化 LTS
  • 【已解决,含泪总结】Ubuntu18.04下非root用户Anaconda3卸载重装,conda install终于不再报错
  • Notepad++ 最新官网中文版在线下载 附文本编辑器安装与基础使用教程
  • leetcode21:合并两个有序列表
  • 封装一个请求的hook(react函数组件)
  • windows下自动升级的辅助工具
  • 【Python】轻松解析JSON与XML:Python标准库的json与xml模块
  • 深度学习经典模型之Network in Network
  • 【单例模式】饿汉式与懒汉式以及线程安全
  • 嵌入向量模型与BM25算法结合:并行检索获取多种结果
  • 常见几种GB 9706.1-2020医疗器械试验工装,您有所了解吗?
  • 使用stream遍历对象集合,取出所有对象的某字段,并以逗号拼接起来
  • 【TabBar嵌套Navigation案例-常见问题按钮-WebView-加载JavaScript Objective-C语言】
  • 杭州电商运营公司排名:怎么找到适合自己的电商代运营公司
  • Java基础知识
  • 模拟计算机如何识别和执行机器语言指令:从虚拟CPU的角度解析
  • C#-哈希表
  • 七载同行,共襄盛会!苏州金龙高标准服务进博会彰显中国智造风采
  • Java手写二分查找
  • 部署一个属于自己的文件服务器(File Browser )
  • 使用亚马逊 S3 连接器为 PyTorch 和 MinIO 创建地图式数据集
  • Halcon 算法加速的基础知识(多核并行/GPU)
  • 多任务学习在转转主搜精排的应用
  • 深圳新世联:氢能中的气体传感器应用
  • 可视化建模与UML《顺序图实验报告》
  • 【青牛科技】D1084 5A低压差电压调整器应用方案