首页 > 其他分享 >Mybatis知识点回顾(一)【温故而知新】

Mybatis知识点回顾(一)【温故而知新】

时间:2024-05-25 16:33:13浏览次数:14  
标签:温故而知新 知识点 Java spring 数据库 druid Mybatis lombok 连接池

前言

  • Mybatis:一款优秀的持久层框架,用于简化JDBC。
  • MyBatis本是Apache的一个开源项目iBatis,2010年这个项目apache迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。

1. JDBC介绍

JDBC(Java DataBase Connectivity),就是使用Java语言操作关系型数据库的一套API。

本质

  • sun公司官方定义的一套操作所有关系型数据库的规范,即接口。
  • 各个数据库厂商去实现这套接口,提供数据库驱动jar包。
  • 我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。

2. 数据库连接池

数据库连接池

  • 数据库连接池是个容器,负责分配、管理数据库连接(Connection)。
  • 它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个。
  • 释放空闲时间超过最大空闲时间的连接,来避免因为没有释放连接而引起的数据库连接遗漏。

优势

  • 资源重用
  • 提升系统响应速度
  • 避免数据库连接遗漏

标准接口:DataSource

  • 官方(sun)提供的数据库连接池接口,由第三方组织实现此接口。
  • 功能:获取连接
    Connection getConnection() throws SQLException;

常见产品

  • C3P0
  • DBCP
  • Druid
  • Hikari(springboot默认)

Druid(德鲁伊)

  • Druid连接池是阿里巴巴开源的数据库连接池项目。
  • 功能强大、性能优秀,是Java语言最好的数据库连接池之一。

切换Druid数据库连接池 Druid官方地址

 <dependency>
	<groupld>com.alibaba</groupld>
	<artifactld>druid-spring-boot-starter</artifactld>
	<version>1.2.8</version>
</dependency>
spring.datasource.druid.driver-class-name = com.mysql.jdbc.Driver
spring.datasource.druid.url = jdbc:mysql://localhost:3306/mybatis
spring.datasource.druid.username = root
spring.datasource.druid.password = 1234

3. lombok

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

<dependency>
	<groupld>org.projectlombok</groupld>
	<artifactld>lombok</artifactld>
</dependency>
注解作用
@Getter/@Setter为所有的属性提供get/set方法
@ToString会给类自动生成易阅读的to String方法
@EqualsAndHashCode根据类所拥有的非静态字段自动重写equals方法和hashCode方法
@Data提供了更综合的生成代码功能(@Getter + @Setter + @ToString + @EqualsAndHashCode)
@NoArgsConstructor为实体类生成无参的构造器方法
@AllArgsConstrutor为实体类生成除了static修饰的字段之外带有各参数的构造器方法

lombok会在编译时,自动生成对应的Java代码。我们使用lombok时,还需要安装一个lombok的插件(idea自带)。

标签:温故而知新,知识点,Java,spring,数据库,druid,Mybatis,lombok,连接池
From: https://blog.csdn.net/shw384348082/article/details/139196513

相关文章

  • MyBatis进阶
    时间:2024-05-25星期五MyBatis高级特性MyBatis日志管理日志日志文件是用于记录系统操作事件的记录文件或文件集合日志保存历史数据,使诊断问题以及理解系统活动的重要依据SLF4J与Logback日志组件关系 SLF4j作为日志输出的门面,负责日志输出的表现;logback是对日志......
  • Mybatis-plus插件功能
    MyBatisPlus自带分页插件,只需简单的配置就可以实现分页功能添加配置类注解@Configuration@ConfigurationpublicclassMyBatisPlusConfig{//配置分页插件@BeanpublicMybatisPlusInterceptormybatisPlusInterceptor(){MybatisPlusInterceptorin......
  • 【知识点】浅入线段树与区间最值问题
    前言:这又是一篇关于数据结构的文章。今天来讲一下线段树和线段树的基本应用。线段树(SegmentTree),是一种非常高效且高级的数据结构,其主要用于区间查询和与区间更新相关的问题,例如进行多次查询区间最大值、最小值、更新区间等操作。区间最值问题引入常见的线段树题型就是区......
  • 大数据技术原理与应用——第1章(知识点+课后题)
    参考:大数据技术原理与应用(第3版)林子雨编著基本概念大数据:指无法在可承受的时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。流数据/数据流:指在时间分布和数......
  • SpringMVC+MyBatis 开发社交网站-27_实现图书更新功能
    实现图书修改更新功能imooc-reader项目:webapp\WEB-INF\ftl\management\book.ftl 图书管理页面<scriptsrc="/resources/layui/layui.all.js"></script><script>   vartable=layui.table;//table数据表格对象   var$=layui.$;//jQuery   var......
  • SpringMVC+MyBatis 开发社交网站-26_实现图书分页查询
    实现图书分页查询imooc-reader项目:webapp\WEB-INF\ftl\management\book.ftl 图书管理页面<scriptsrc="/resources/layui/layui.all.js"></script><script>   vartable=layui.table;//table数据表格对象   var$=layui.$;//jQuery   varedit......
  • SpringMVC+MyBatis 开发社交网站-25_实现图书新增功能
    实现图书新增功能imooc-reader项目:pom.xml<projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/xsd/mav......
  • uniapp快速分享知识点,请求简单封装 登陆 ,支付 , 分享 , 短信,
    第一部份requrety请求封装 备注:关于环境配置ui选择插件安装在我的另一个帐号中前几天也经写了,这个博客就不用在写一遍了另一博客地址:https://www.cnblogs.com/ZzwWan/p/18202502module.exports=(vm)=>{//初始化请求配置uni.$u.http.setConfig((config)=>{......
  • 初始MyBatis ,详细步骤运行第一个MyBatis程序,同时对应步骤MyBatis底层剖析
    1.初始MyBatis,详细步骤运行第一个MyBatis程序,同时对应步骤MyBatis底层剖析文章目录1.初始MyBatis,详细步骤运行第一个MyBatis程序,同时对应步骤MyBatis底层剖析每博一文案2.前沿知识2.1框架(framework)2.2三层架构2.3分析JDBC的缺点3.初始了解MyBatis4.MyBatis......
  • MyBatisPlus初始代码生成
    1.安装插件 这里使用的是这一个插件 2.连接数据库插件安装完毕后重启idea,发现后面多了一个选项点击 这里要与自己的database对应,设置好后点击testconnect测试,成功就可以了如果出现:Theservertimezonevalue'�й���׼ʱ��'isunrecognizedorrepresentsmoret......