MyBatisPlus的入门使用

【MybatisPlus】快速入门 MybatisPlus快速入门、常用注解及常见配置,五分钟带你学会MybatisPlus! 阅读详情

1.MyBatisPlus 介绍

MyBatis-Plus(简称 MP),是一个 MyBatis 的增强工具包,只做增强不做改变. 为简化开
发工作、提高生产率而生

2.集成 MP

2.1 创建测试表
-- 创建库
CREATE DATABASE mp;
-- 使用库
USE mp;
-- 创建表
CREATE TABLE tbl_employee(
 id INT(11) PRIMARY KEY AUTO_INCREMENT,
 last_name VARCHAR(50),
 email VARCHAR(50),
 gender CHAR(1),
 age int
);
INSERT INTO tbl_employee(last_name,email,gender,age) VALUES('Tom','tom@atguigu.com',1,22);
INSERT INTO tbl_employee(last_name,email,gender,age) VALUES('Jerry','jerry@atguigu.com',0,25);
INSERT INTO tbl_employee(last_name,email,gender,age) VALUES('Black','black@atguigu.com',1,30);
INSERT INTO tbl_employee(last_name,email,gender,age) VALUES('White','white@atguigu.com',0,35);
2.2 创建 javaBean
public class Employee {
	private Integer id ; 
	private String lastName; 
	private String email ;
	private Integer gender ;
	 private Integer age ;
public Integer getId() {
	return id; 
}
public void setId(Integer id) {
	this.id = id;
}
public String getLastName() {
	return lastName;
}
public void setLastName(String lastName) {
	this.lastName = lastName; 
}
public String getEmail() {
	return email; 
}
public void setEmail(String email) {
	this.email = email; 
}
public Integer getGender() {
	return gender; 
}
public void setGender(Integer gender) {
	this.gender = gender; 
}
 public Integer getAge() {
	return age; 
}
public void setAge(Integer age) {
	this.age = age; 
}
@Override
public String toString() {
	return "Employee [id=" + id + ", lastName=" + lastName + ", email=" + email
	+ ", gender=" + gender + ", age="
	+ age + "]";
}
2.3 依赖配置
  1. 在 pom.xml 中加入对 MP、Spring、连接池、Junit、Mysql 驱动等依赖
<dependencies>
        <!-- mp依赖
             mybatisPlus 会自动的维护Mybatis 以及MyBatis-spring相关的依赖
         -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus</artifactId>
            <version>2.3</version>
        </dependency>
        <!--junit -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.9</version>
        </dependency>
        <!-- log4j -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
        <!-- c3p0 -->
        <dependency>
            <groupId>com.mchange</groupId>
            <artifactId>c3p0</artifactId>
            <version>0.9.5.2</version>
        </dependency>
        <!-- mysql -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.32</version>
        </dependency>
        <!-- spring -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>4.3.10.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</artifactId>
            <version>4.3.10.RELEASE</version>
        </dependency>

    </dependencies>

特别说明: Mybatis 及 Mybatis-Spring 依赖请勿加入项目配置,以免引起版本冲突!!! Mybatis-Plus
会自动帮你维护!

  1. 加入 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>
 </configuration>
  1. 加入 log4j.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
 <param name="Encoding" value="UTF-8" />
 <layout class="org.apache.log4j.PatternLayout">
 <param name="ConversionPattern" value="%-5p %d{MM-dd 
HH:mm:ss,SSS} %m (%F:%L) \n" />
 </layout>
</appender>
<logger name="java.sql">
 <level value="debug" />
</logger>
<logger name="org.apache.ibatis">
 <level value="info" />
</logger>
<root>
 <level value="debug" />
 <appender-ref ref="STDOUT" />
</root>
</log4j:configuration>
  1. 加入 db.properties 连接信息配置
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mp
jdbc.username=root
 jdbc.password=1234
  1. 加入 spring 的配置文件 applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:mybatis-spring="http://mybatis.org/schema/mybatis-spring"
	xsi:schemaLocation="http://mybatis.org/schema/mybatis-spring http://mybatis.org/schema/mybatis-spring-1.2.xsd
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
		http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">
	
	
	<!-- 数据源 -->
	<context:property-placeholder location="classpath:db.properties"/>
	<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
		<property name="driverClass" value="${jdbc.driver}"></property>
		<property name="jdbcUrl" value="${jdbc.url}"></property>
		<property name="user" value="${jdbc.username}"></property>
		<property name="password" value="${jdbc.password}"></property>
	</bean>
	
	<!-- 事务管理器 -->
	<bean id="dataSourceTransactionManager" 
		class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource" ref="dataSource"></property>
	</bean>
	<!-- 基于注解的事务管理 -->
	<tx:annotation-driven transaction-manager="dataSourceTransactionManager"/>
	
	
	<!--  配置SqlSessionFactoryBean 
		Mybatis提供的: org.mybatis.spring.SqlSessionFactoryBean
		MP提供的:com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean
	 -->
	<bean id="sqlSessionFactoryBean" class="com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean">
		<!-- 数据源 -->
		<property name="dataSource" ref="dataSource"></property>
		<property name="configLocation" value="classpath:mybatis-config.xml"></property>
		<!-- 别名处理 -->
		<property name="typeAliasesPackage" value="it.ying.domain"></property>
		
	</bean>

目录结构
在这里插入图片描述

3.实现

实现方式:

基于 Mybatis
需要编写 EmployeeMapper 接口,并手动编写 CRUD 方法提供 EmployeeMapper.xml 映射文件,并手动编写每个方法对应的 SQL 语句。

基于 MP
只需要创建 EmployeeMapper 接口, 并继承 BaseMapper 接口.这就是使用 MP。需要完成的所有操作,甚至不需要创建 SQL 映射文件。

编写Mapper接口
import com.baomidou.mybatisplus.mapper.BaseMapper;
import it.ying.domain.Employee;

public interface EmployeeMapper extends BaseMapper<Employee> {
}

继承BaseMapper接口即可

表名和主键的配置

在这里插入图片描述

4.测试

public class Demo{
 	private ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
    private EmployeeMapper employeeMapper = applicationContext.getBean("employeeMapper",EmployeeMapper.class);
   
    @Test
    public void testEmployee(){
        Employee employee = new Employee();
        employee.setLastName("wnag");
        employee.setEmail("");
        employee.setAge(0);
        employee.setGender(0);
        Integer insert = employeeMapper.insert(employee);
        System.out.println(insert);
    }

输出:1,说明插入成功
再看一下数据库中的数据
在这里插入图片描述

Abaqus滞回问题求解—浆锚连接装配式剪力墙滞回模拟 当下土木工程研究生,多数都在从事装配式混凝土构件安全或装配式混凝土构件连接节点力学性能的研究。研究这类问题,几乎脱离不开对有限元软件的使用,Abaqus求解能力非常强大,但模型处理能力相对较弱。装配式混凝土结构的有限元计算与传统现浇结构相比,其节点处理起来相对复杂,计算结果往往需要凸显出连接节点力学特性,所以对建模精程度的要求较高。所以向大家介绍一款工具—HyperMesh软件(一下简称Hm),它是专业的有限元前处理工具,用于处理装配式混凝土构件或连接节点有限元模型比较合适。这篇文章主要介绍如何利用Hm处理 阅读详情

相关推荐

赛灵思KV260视觉AI套件实战:从模型到边缘部署全流程解析

边缘计算与AI推理加速是当前嵌入式系统和物联网领域的关键技术。其核心原理在于将计算任务从云端下沉至网络边缘的设备端,通过专用硬件加速器(如FPGA、ASIC或NPU)执行神经网络推理,从而显著降低延迟、减少带宽消耗并提升数据隐私性。这一技术为实时性要求高的应用场景(如工业视觉检测、智能安防、自动驾驶等)提供了关键支撑。以赛灵思(Xilinx)的Zynq UltraScale+ MPSoC平台为例,其集成了ARM处理器与可编程逻辑,通过预置的深度学习处理器单元(DPU)为卷积神经网络提供高效INT8加速。开发

weixin_28719225的博客 325

Python实现Mybatis Plus

【代码】Python实现Mybatis Plus。

Uluoyu的博客 691

信号完整性SI-PI

SI设计的主要难点在于需要综合信号的幅度、噪声、边沿、延时等影响信号质量的多种因素,并且这种因素常常相互依赖、互相影响,交叉在一起。1.1、信号过冲 (欠阻尼状态,可并联一个合适的电容):过冲会造成强烈的电磁干扰,另一方面会损伤后面的电路的输入及,甚至失效。信号完整性SI:是指电路系统中信号的质量,如果在要求的时间内,信号能不失真的从源端传输到接收端。优点:提供较慢的上升时间,减少反系量,产生更小的EMI,从而降低过冲,增加信号质量。导线之间的间距过小, 就会产生串扰,间距越小、串扰越大。

weixin_42304393的博客 4866

干货 | 利用Python操作mysql数据库

作者 |Tao来源 | 知乎本文主要讲解如何利用python中的pymysql库来对mysql数据库进行操作。先看一下最常见的操作:从数据库中select需要的字段(对数据简单聚合处...

SeizeeveryDay的博客 662

基于Simulink的永磁同步电机(PMSM)无位置传感器矢量控制与龙伯格观测器设计​

本文介绍了基于Simulink的永磁同步电机(PMSM)无位置传感器矢量控制方法,重点讲解了龙伯格观测器的设计与实现。主要内容包括:1)系统架构与数学推导,通过静止坐标系状态方程和极点配置构建观测器;2)Simulink建模步骤,从电机模型搭建到观测器核心代码实现;3)仿真结果对比分析,显示龙伯格观测器相比滑模观测器具有更好的平滑性和抗噪能力;4)工程部署建议,包括参数在线辨识、低速补偿策略和代码生成优化。该方法实现了全速域无感运行,稳态转速误差小于1%,为低成本高可靠性电机控制提供了有效解决方案。

amy_mhd的博客 161

告别功能限制:Win11家庭版无损升级专业版全攻略

本文详细介绍了如何将Win11家庭版无损升级到专业版的全过程,包括升级前的准备、两种官方升级方案(Microsoft Store购买和使用产品密钥)以及命令行升级方法。升级后可解锁远程桌面、组策略编辑器和BitLocker加密等高级功能,适合需要更多商业功能的用户。

weixin_32822843的博客 697

Python实现一个类似MybatisPlus的简易SQL注解

在实际开发中,根据业务拼接SQL所需要考虑的内容太多了。于是,有没有一种办法,可以像MyBatisPlus一样通过配置注解实现`SQL`注入呢?

ordinary_brony的博客 1335

比较几款国际主流的电子元器件及物料清单管理软件 – 工具汇总

Arenasolution 老牌的基于云计算物料清单管理软件,bom.com就是他们家的,10天免费试用,功能被分成4个不同的产品, 和传统ERP功能上有重叠,偏向于物流生产规划,一定程度可以取代ERP的生产规划模块,平均价格70美元/月/席位。网页客户端,不支持离线   SiliconExpert 曾经的老牌物料清单管理软件,后被Arrow 收购,14天免费试用,功能被分成4个不同的产品

u012062784的专栏 7235

python实现java mybatis-plus的雪花算法

import copy import os import random import time class Sequence: # 时间起始标记点,作为基准,一般取系统的最近时间(一旦确定不能变动) twepoch = 1288834974657 # 机器标识位数 worker_id_bits = 5 datacenter_id_bits = 5 max_worker_id = -1 ^ (-1 << worker_id_bits) m

Jack博客中心 684

(2024,DDPM,DDIM,流匹配,SDE,ODE)扩散:基础教程

本文的目标是尽可能简单地教授扩散。第一节介绍扩散的基本原理。第二节和第三节展示如何构建随机和确定性扩散采样器。第四部分介绍了密切相关的流匹配,可看作是扩散的推广。​第五节,强调实践中最重要的一些设计选择,包括采样器、噪声时间表和参数化方法。

qq_44681809的博客 1万+

思博伦仪表打流测试使用总结

下图红框中的checkbox为选中状态时,表示该流会携带测试仪做一些分析,包括时延和乱序等信息时需要的一些字节,当改选项选中时,如配置IPv4的TCP流,最小字节长度必须为78字节;如果需要64字节的TCP流,改选项必须不选中;

陌上花开缓缓归以的博客 1463

MybatisPlus

MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生(提供了快速使用mybatis的方式)。或Redirect/*** 编写接口继承BaseMapper接口,* 其中泛型是是与数据表对应的entity类,会根据泛型类的@TableName注解值获取要操作的数据表*/@Mapper/*** 分页查询id大于id的用户集合。

luosuss的博客 1万+

项目管理 Agent:进度追踪与风险预警 Harness

我们先从LangChain的Agent定义说起:Agent是一个能感知环境、自主决策、调用工具、执行动作、迭代反思的智能实体。而「项目管理全自主Agent」,就是把Agent的核心能力和项目管理的五大过程组(启动、规划、执行、监控、收尾)深度结合,聚焦执行监控阶段的两个核心痛点:进度偏差自动化计算、风险信号自动化识别与预警的专门化Agent。全感知(Omnisensing):能从。

AI架构师小马 515

MybatisPlus入门

为了简化单表CRUD,MybatisPlus提供了一个基础的。

m0_58737250的博客 1153

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

MybatisPlus-快速入门

本文详解MyBatisPlus核心功能,包含SpringBoot整合步骤、入门案例实现、@TableName/@TableId/@TableField等常用注解解析。通过案例,演示增删改查开发流程,5分钟完成基础业务搭建,助你快速掌握高效ORM框架,告别繁琐SQL编写!#Java开发 #框架技巧 #编程干货

Crayon26的博客 1397

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

MybatisPlus教程-从入门到进阶

首先它是国产的,所以直接用官网的简介。MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 好了,上面的都来自于官网,我们要做的就是把官网中各种零散的教程,整合成一个个通俗易懂的案例。拢共就两步 定义Mapper接口并继承BaseMapper 快速入门-入门案例 需求:基于课前资料提供的项目,实现下列功能:详情参考SpringBootWeb快速入门。 创建对应的实体类 创建数据库配置文件 为了可以在控制台日志

SunnyRivers 1568

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

MyBatisPlus入门使用

MyBatisPlus入门使用

qq_41610957的博客 1389

MyBatisPlus--快速入门

从名字中就可以感觉到MybatisPlus与MyBatis之间的渊源,而MyBatis是一个非常流行的持久层框架,主要来做数据库的增删改查,而MyBatisPlus这种命名方式让人不得不往MyBatis的升级版去联想,事实也确实如此,MyBatisPlus就是对MyBatis框架的增强与升级,但MyBatisPlus并不是来替代MyBatis的,MyBatisPlus的官网logo是一只蓝色的小鸟,MyBatis官网的logo是一只红色的小鸟,并且在MyBatisPlus官网下的标语就是。

m0_73856804的博客 2828

MyBatisPlus简介及入门案例

MyBatisPlus简介及入门案例

后端小白个人学习记录 1337

MyBatisPlus入门学习

前言:在之前的博客中有讲过mybatis技术 mybatis入门博客链接 mybatis加强博客链接 mybatis高级博客链接 一、mybatisPlus简介 1、mybatisPlus概念 简称 MP:是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通...

Abdullahi_kanye的博客 1315

MyBatisPlus入门

这一节我们来学习下MyBatisPlus的入门案例与简介,这个和其他课程都不太一样,其他的课程都是先介绍概念,然后再写入门案例。而对于MyBatisPlus的学习,我们将顺序做了调整,主要的原因MyBatisPlus主要是对MyBatis的简化,所有我们先体会下它简化在哪,然后再学习它是什么,以及它帮我们都做哪些事。MybatisPlus(简称MP)是基于MyBatis框架基础上开发的增强型工具,旨在简化开发、提供效率。开发方式SpringBoot刚刚我们学习完成,它能快速构建Spring开发环境用以整合其

爪蛙毁一生的博客 1624

mybatisPlus入门篇

【代码】mybatisPlus入门篇。

缘友一世的博客 1984

MybatisPlus快速入门

通过本文章,让你实现快速入门MybatisPlus,感受到效率的极大提升,体会到MybatisPlus的无侵入和方便快捷的特点,并且引入MybatisPlus不会对现有的工程产生影响,只需要简单配置,就可以快速进行单表的CRUD操作,从而节省大量时间

2301_78179333的博客 1089
上一篇: Docker 安装 Nginx
下一篇: python-数据分析理论
穷图陌�
博客等级 码龄8年 1粉丝 25原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值