自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 收藏
  • 关注

原创 2025最新Mybatis-plus教程(四)

MyBatis-Plus提供了通用Service层封装,简化Service层开发。其核心功能包括:1)提供save()、updateById()等通用CRUD方法;2)支持saveOrUpdate()根据ID自动判断新增或更新;3)提供getOne()等查询方法,支持条件构造器Wrapper。使用时需继承IService接口,并通过ServiceImpl实现类完成功能集成。文中通过EmployeeService案例演示了保存、更新及查询操作,展示了如何通过条件构造器实现灵活查询。该设计可减少重复代码,提升开

2025-07-29 09:20:27 922

原创 2025最新Mybatis-plus教程(三)

摘要:本文介绍了MyBatis-Plus中Wrapper条件构造器的使用,重点演示了QueryWrapper实现的各种查询方式。包括selectOne单条件查询、selectList多条件组合查询(支持like、or、and等操作)、selectPage分页查询(需配置分页插件)以及update和delete方法的使用。同时展示了动态条件查询的实现方式和分页插件的配置方法,为MyBatis-Plus的条件构造提供了完整的示例参考。

2025-07-28 16:23:19 975

原创 2025最新Mybatis-plus教程(二)

本文介绍了MyBatis-Plus中BaseMapper接口的CRUD操作方法,包括增删改查的基本使用。重点讲解了@TableId、@TableName和@TableField等注解的用法,以及主键生成策略(如雪花算法)。通过示例代码演示了插入数据获取主键值、更新数据、批量查询和条件删除等常见操作。文章还详细说明了实体类属性与数据库字段的映射关系处理方式,包括字段名不一致和忽略不存在字段等场景。

2025-07-23 13:54:45 655

原创 2025最新Mybatis-plus教程(一)

MyBatis-Plus是一个MyBatis增强工具,具有无侵入、高性能、强大CRUD操作等优势。文章介绍了SpringBoot整合MyBatis-Plus的步骤:创建Maven工程添加相关依赖;建立数据库表和数据模型;配置application.yml数据源;编写启动类和Mapper接口;最后通过测试验证整合效果。MyBatis-Plus简化了MyBatis开发,支持Lambda表达式、主键自动生成、代码生成器等功能,能显著提升开发效率。

2025-07-11 09:23:21 530

原创 2025Mybatis最新教程(八)(完结)

本文介绍了MyBatis框架中两个实用工具:Druid连接池和PageHelper分页插件。Druid是阿里巴巴开源的高性能数据库连接池,通过基准测试对比显示其性能优于其他主流连接池。文章详细说明了Druid的配置步骤,包括pom.xml依赖引入和mybatis-config.xml配置。PageHelper分页插件使用简便,支持复杂查询分页,文中阐述了其开发步骤、PageInfo对象应用方式以及分页合理化参数设置。两个工具都能有效提升MyBatis开发效率,其中Druid优化数据库连接性能,PageHel

2025-07-03 14:59:14 748

原创 2025Mybatis最新教程(七)

本文介绍了MyBatis的缓存机制,重点讲解了一级缓存和二级缓存。一级缓存是SqlSession级别的缓存,默认开启,能减少同Session内的重复数据库查询;二级缓存是Mapper级别的缓存,需在配置文件和Mapper.xml中开启,且需要SqlSession关闭后生效。文章通过代码示例演示了缓存的使用方式、失效场景(如数据更新时)和注意事项(如对象需序列化)。合理使用缓存可提高查询性能、减轻数据库负担,但会增加服务器内存消耗。开发中需根据业务场景权衡使用缓存策略。

2025-06-27 15:28:18 1038

原创 2025Mybatis最新教程(六)

本文展示了MyBatis动态SQL的多种应用场景。案例1演示了<if>标签的用法,根据条件动态拼接SQL语句;案例2说明多表联查时的条件判断;案例3揭示直接使用<if>可能导致SQL语法错误,并引入<where>标签解决该问题。此外还介绍了<set>标签用于动态更新字段,<foreach>处理集合遍历(如IN条件),以及<bind>创建变量和<selectKey>获取主键值。这些标签组合使用可以灵活构建动态SQL,适应不同业

2025-06-23 16:57:12 600

原创 2025Mybatis最新教程(五)

MyBatis ORM映射机制解析 本文详细介绍了MyBatis处理ORM映射的多种方案。首先指出MyBatis自动ORM的局限性,即只能处理列名与属性名相同的情况。针对列名不一致问题,提出了两种解决方案:使用SQL列别名和ResultMap结果映射,并演示了具体实现方式。随后介绍了驼峰命名映射配置方法。 重点阐述了MyBatis处理实体关联关系的实现机制: 一对一关系(OneToOne)的两种映射方式:嵌套结果映射和嵌套Select查询 一对多关系(OneToMany)的实现,对比了集合属性映射的区别 多

2025-06-18 10:07:35 424

原创 2025Mybatis最新教程(四)

本文介绍了MyBatis中的CRUD操作实现方式。在查询方面,详细讲解了参数绑定的四种形式:直接参数名、注解参数、Map参数和对象参数,以及模糊查询的三种实现方案。删除、修改和添加操作分别使用对应的标签实现,并强调增删改操作需要提交事务。特别介绍了主键回填技术,包括自增长主键和UUID主键两种实现方式。最后提到使用<sql>标签定义可重用SQL片段的方法,提高代码复用性。这些内容涵盖了MyBatis进行数据库操作的核心知识点。

2025-06-10 14:51:47 734

原创 2025Mybatis最新教程(三)

本文介绍了使用MyBatis进行数据库开发的完整步骤:首先创建数据库表并插入测试数据;然后创建对应的Java实体类(使用Lombok简化代码);接着定义Mapper接口和对应的XML映射文件;将Mapper注册到MyBatis配置文件中;最后通过测试类验证功能。此外还介绍了优化配置的方法:将数据库连接信息提取到properties文件、为实体类配置类型别名、以及配置SQL日志输出功能。整个过程展示了MyBatis从表结构设计到业务实现的标准开发流程。

2025-06-04 14:01:45 866

原创 2025Mybatis最新教程(二)

摘要: 本章介绍了MyBatis环境搭建的完整流程。首先通过Maven创建新项目,然后在pom.xml中添加必要依赖,包括Druid连接池(1.2.6)、MySQL驱动(8.0.25)、MyBatis核心(3.5.6)和Lombok(1.18.20)。接着在resources目录下创建mybatis-config.xml配置文件,详细配置了数据库环境(MySQL)、事务管理(JDBC)、数据源(PooledDataSourceFactory)以及Mapper文件位置。配置文件中包含了数据库连接所需的驱动类、

2025-05-30 15:11:23 507

原创 2025Mybatis最新教程(一)

MyBatis 是一个优秀的基于 Java 的持久层框架,它内部封装了 JDBC,使开发者只需关注 SQL 语句本身,而不用再花费精力去处理诸如注册驱动、创建 Connection、配置 Statement 等繁杂过程。

2025-05-22 08:36:32 888

原创 2025Linux安装配置文档(六)(完结)

在生产环境中,为确保数据库的稳定性,通常采用双机热备机制,即配置主从数据库。当主数据库(Master)崩溃时,从数据库(Slave)可立即切换为主数据库,通过主从复制实现数据同步。为提升数据库的并发负载能力,业务代码中实现读写分离,主库处理增、改、删操作,从库处理查询操作。本文以MySQL 8.0.16和SpringBoot为例,详细介绍了如何在一主一从的架构下实现这一机制。步骤包括:下载并安装MySQL,配置主从数据库,设置主从同步(binlog),以及在SpringBoot中配置读写分离。通过使用dyn

2025-05-21 09:34:10 1166

原创 2025Linux安装配置文档(五)

在CentOS 7上安装Tomcat 9的步骤包括:首先从Apache官网下载Tomcat 9的tar.gz文件,并检查系统是否已安装JDK 8或以上版本。接着,将下载的Tomcat文件复制到/usr/local目录下并解压,解压后重命名文件夹为tomcat9。通过执行startup.sh脚本启动Tomcat服务。如果访问http://ip:8080时出现错误,可能是由于防火墙未开放8080端口。此时,需要使用root用户通过firewall-cmd命令开放8080端口,并重启防火墙服务。最后,再次检查端口

2025-05-16 10:10:54 541

原创 2025Linux安装配置文档(四)

本文详细介绍了在Linux系统上安装和配置Nginx服务器的步骤。首先,通过yum命令安装必要的依赖包,包括gcc、pcre、zlib和openssl等。接着,下载Nginx 1.18.0的安装包并解压。进入解压后的目录,使用./configure指定安装路径,并通过make和make install命令进行编译和安装。安装完成后,通过指定配置文件启动Nginx。文章还介绍了如何查看Nginx进程、启动、停止和重启Nginx的多种方法,包括使用kill命令和reload命令。这些步骤为在Linux系统上部署

2025-05-15 09:34:08 715

原创 2025Linux安装配置文档(三)

在CentOS 7上安装MySQL 8的步骤包括:首先下载并安装MySQL官方的Yum Repository,然后导入GPG密钥并安装MySQL服务器,这将覆盖系统默认的MariaDB。安装完成后,启动MySQL服务并查找初始root密码以登录数据库。登录后,必须更改root用户的密码才能进行其他操作。此外,为了避免Yum自动更新MySQL,可以卸载Yum Repository。常见问题如远程连接失败,可以通过修改MySQL用户表允许root用户从任何主机连接,并刷新权限来解决。

2025-05-14 08:59:44 740

原创 2025Linux安装配置文档(二)

① 将jdk-17_linux-x64_bin.tar.gz文件拷贝一份到/usr/java。注意JAVA_HOME=/usr/java/jdk-17.0.10就是你自己的目录。jdk-17_linux-x64_bin.tar.gz    文件名。-bash: /usr/bin/java: 没有那个文件或目录。但是会出错,因为在普通用户下,并没有操作这几个文件的权限。②进入/usr/java目录,解压JDK压缩文件。进入root用户,可以有权限操作这几个文件。--nodeps  不验证套件档的相互关联性。

2025-05-13 09:09:32 953

原创 2025Linux安装配置文档(一)

三. 如果以上还是不行,可以换用网易163的yum镜像,速度没多少差别 对于网易163的yum镜像,一般来说不需要注册即可使用。如果您的网络环境受到防火墙或其他限制,您可能需要进行相应的网络配置调整。如果您只是想简单配置阿里云镜像,忽略注册错误是个常见的做法,因为阿里云镜像一般是开放的,无需登录或注册即可使用。配置完成后,您的CentOS 7系统将使用阿里云的yum镜像进行软件包的下载和更新。通过以上步骤,您的CentOS 7系统将配置为使用网易163的yum镜像,以提供更快的软件包下载和更新速度。

2025-05-08 09:36:21 677

原创 2025最新系统 Linux 教程(十)(完结)

执行sudo -u <用户名> <命令>, 将允许当前用户,提权到<用户名>的身份,再执行后面的<命令>, 即使<命令>原本需要root权限。"字段3"和"字段4"省略。具体工作过程如下:  当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限  –>确认用户具有可执行sudo的权限后,让用户输入用户自己的密码确认  –>若密码输入成功,则开始执行sudo后续的命令。需要注意的是: 执行sudo时输入的密码是当前用户的密码, 并非<用户名>的密码。

2025-05-07 09:00:59 1015

原创 2025最新系统 Linux 教程(九)

不带参数运行ls会只列出文件或者目录。看不到其他信息输出(译注:有时候你发现无参数的ls命令和这里描述的不同,那有可能是你的ls命令实际上带参数的ls别名)。$ ls。

2025-05-06 11:00:35 1133

原创 2025最新系统 Linux 教程(八)

Centos系统上安装软件主要由三种方式:绝大多数开源软件都是直接以原码形式发布的源代码一般会被打成.tar.gz的归档压缩文件源代码需要编译成为二进制形式之后才能够运行使用源代码基本编译流程:1).configure 检查编译环境 2)make对源代码进行编译; 3)make insall 将生成的可执行文件安装到当前计算机中RMP 是 LINUX 下的一种软件的可执行程序,你只要安装它就可以了。这种软件安装包通常是一个RPM包(Redhat Linux Packet Manager,就是Redhat的包

2025-04-30 10:41:30 354

原创 2025最新系统 Linux 教程(七)

所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。但是目前我们使用比较多的是 vim 编辑器。vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

2025-04-28 09:11:36 1175

原创 2025最新系统 Linux 教程(六)

Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个唯一的用户名和各自的口令。用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。实现用户账号的管理,要完成的工作主要有如下几个方面:· 用户账号的添加、删除与修改。

2025-04-24 09:37:10 1161

原创 2025最新系统 Linux 教程(五)

在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按 键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!路径的写法,不是由 / 写起,例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成: cd ../man 这就是相对路径的写法啦!#所以,加上 pwd -P 的选项后,会不以连结档的数据显示,而是显示正确的完整路径啊!n <==n不覆盖,y为覆盖。

2025-04-21 14:17:29 612

原创 2025最新系统 Linux 教程(四)

Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。在Linux中我们可以使用ll或者ls –l命令来显示一个文件的属性以及文件所属的用户和组,如:total 64……

2025-04-18 08:47:25 1007

原创 2025最新系统 Linux 教程(三)

依次是系统当前时间、系统已运行时间、当前在线用户以及平均负载值(三个数分别为最近1分钟、5分钟和15分钟的负载情况,值越小越好,小于1是正常)timedatectl set-timezone Asia/Shanghai 设置时区为亚洲上海。date "+%Y-%m-%d %H:%M:%S" 国内格式日期时间。echo $SHELL 终端打印当前用户shell路径。echo $HOSTNAME 显示主机名称或者IP。uname -a 查看系统完整信息。cd / 切换到系统根路径。重启系统(仅root用户)

2025-04-17 09:14:57 572

原创 2025最新系统 Linux 教程(二)

这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log 目录下,另外mail的预设放置也是在这里。: dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。

2025-04-15 09:02:42 1116

原创 2025最新系统 Linux 教程(一)

Linux 内核最初只是由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX(可移植操作系统接口)和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

2025-04-13 09:00:00 396

原创 2025最新系统 Git 教程(七)(完结)

上面介绍了在 Git 等分布式系统中经常使用的工作流程,但是在实际的开发中,你会遇到许多可能适合你的特定工作流程的变种。现在你应该已经清楚哪种工作流程组合可能比较适合你了,我们会给出一些如何扮演不同工作流程中主要角色的更具体的例子。下一节我们将会学习为项目做贡献的一些常用模式。

2025-04-12 16:26:32 1834

原创 2025最新系统 Git 教程(六)

这项技术能使你快速并且完整地进行上下文切换(context-switch)——因为你的工作被分散到不同的流水线中,在不同的流水线中每个分支都仅与其目标特性相关,因此,在做代码审查之类的工作的时候就能更加容易地看出你做了哪些改动。如果你对已经推送至共用仓库的提交上执行变基命令,并因此丢失了一些别人的开发所基于的提交, 那你就有大麻烦了,你的同事也会因此鄙视你。你在查看一个经过变基的分支的历史记录时会发现,尽管实际的开发工作是并行的, 但它们看上去就像是串行的一样,提交历史是一条直线没有分叉。

2025-04-11 09:56:51 1132

原创 2025最新系统 Git 教程(五)

为了真正理解 Git 处理分支的方式,我们需要回顾一下 Git 是如何保存数据的。Git 保存的不是文件的变化或者差异,而是一系列不同时刻的快照。在进行提交操作时,Git 会保存一个提交对象(commit object)。知道了 Git 保存数据的方式,我们可以很自然的想到——该提交对象会包含一个指向暂存内容快照的指针。但不仅仅是这样,该提交对象还包含了作者的姓名和邮箱、提交时输入的信息以及指向它的父对象的指针。

2025-04-10 09:25:34 1043

原创 2025最新系统 Git 教程(四)

像其他版本控制系统(VCS)一样,Git 可以给仓库历史中的某一个提交打上标签,以示重要。比较有代表性的是人们会使用这个功能来标记发布结点(v1.0v2.0等等)。在本节中,你将会学习如何列出已有的标签、如何创建和删除新的标签、以及不同类型的标签分别是什么。

2025-04-09 14:47:20 1020

原创 2025最新系统 Git 教程(三)

远程仓库是指托管在因特网或其他网络中的你的项目的版本库。之间究竟有何差别, 其实作者指的是实际作出修改的人,提交者指的是最后将此工作成果提交到仓库的人。如果自上次提交以来你还未做任何修改(例如,在上次提交后马上执行了此命令), 那么快照会保持不变,而你所修改的只是提交信息。选项在每次提交的下面列出所有被修改过的文件、有多少文件被修改了以及被修改过的文件的哪些行被移除或是添加了。如果你仍然想保留对那个文件做出的修改,但是现在仍然需要撤消,我们将会在 [Git 分支]介绍保存进度与分支,这通常是更好的做法。

2025-04-08 10:08:38 1090

原创 2025最新系统 Git 教程(二)

请注意,git diff 本身只显示尚未暂存的改动,而不是自上次提交以来所做的所有改动。所以有时候你一下子暂存了所有更新过的文件,运行。

2025-04-07 09:33:03 1247

原创 2025最新系统 Git 教程(一)

本章为 Git 入门。我们从介绍版本控制工具的背景知识开始,然后讲解如何在你的系统上运行 Git,最后是关于如何设置 Git 以便开始工作。通过本章的学习,你应该能了解为什么 Git 这么流行,为什么你应该使用 Git 以及你应该如何设置以便使用 Git。

2025-04-06 09:00:00 1355 1

原创 docker搭建minio集群(简化版)

添加了websocket支持 --- 不添加 桶打不开。#添加了websocket支持 --- 不添加 桶打不开。分别在三台服务器上执行即可,需要修改下面http中的ip地址。# 注意ip 修改成对应的。另外一台服务器跑Nginx。

2025-04-05 09:00:00 752

原创 Docker 安装 Tomcat

查找上的 Tomcat 镜像:可以通过 Sort by 查看其他版本的 tomcat,默认是最新版本。此外,我们还可以在控制台使用命令来查看可用版本:这里我们拉取官方的镜像:等待下载完成后,我们就可以在本地镜像列表里查到 REPOSITORY 为 tomcat 的镜像。

2025-04-04 10:00:00 1206

原创 Docker 安装 Redis

Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 的 NoSQL 数据库,并提供多种语言的 API。

2025-04-03 11:12:50 1332

原创 Docker 安装 Nginx

Nginx 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 IMAP/POP3/SMTP 服务。

2025-04-02 09:38:53 483

原创 docker安装mysql

MySQL 是世界上最受欢迎的开源数据库。凭借其可靠性、易用性和性能,MySQL 已成为 Web 应用程序的数据库优先选择。

2025-04-01 09:01:10 1002

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除