自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Python使用pymysql调用存储过程

先创建一个简单的存储过程。通过pymysql调用。

2025-12-12 13:47:05 79

原创 Python使用pymysql执行DML语句

执行修改操作,需要通过Connection对象调用commit()方法确认提交,或者构造方法里面,autocommit设置Ture,自动提交。执行update操作,与insert操作类似。

2025-12-12 13:37:56 450

原创 线程死锁相关问题及处理

监控系统可以定时使用jstack 命令采集线程信息,jstack命令中可以查看到死锁的详细信息,进行告警或者人工介入干预等。jstack:查看命令死锁信息,jdk自带的工具,可以查看某个java进程中所有的线程快照,可以看到死锁的相关信息。线程死锁会导致线程阻塞,若有大量线程阻塞,将会导致线程资源被耗尽,最终会导到系统崩溃,无法对外服务。jvisualvm工具:jdk自带的工具。阿里开源的工具,特别好用的一个jvm线上问题诊断工具。jps:jdk自带工具,可以查看所有的java进程。

2025-12-08 19:27:24 796

原创 RabbitMQ工作队列模式理解

消费者之间竞争消费消息,即队列中的每一条消息只可能被一个消费者消费。工作队列模式是一个生产者、一个队列,有一个或者多个消费者。生产端:发送多条消息测试。

2025-12-08 01:30:52 263

原创 pymysql执行DDL语句

连接MySQL数据库后,可以使用cursor()方法创建一个游标对象。游标对象用于执行MySQL语句并返回结果。pymysql对操作MySQL DDL数据库模式定义语言提供了很好的支持。

2025-12-08 01:00:14 191

原创 Python操作MySQL之pymysql

PyMySQL 是一个用于连接 MySQL 数据库的 Python 库。Python操作mysql数据有好向个第三方模块,比较出名的是PyMySQL和mysql-connector-python,用法差不多。

2025-12-05 00:22:11 129

原创 SpringBoot自动初始化数据

在指定的位置(如src/main/resources/db/)下创建sql脚本文件,如schemal.sql里面写数据库的ddl脚本,data.sql里面写dml的脚本。SpringBoot已经帮我们提供这个功能,把数据库的初始化脚本写在程序中某个文件中,系统启动的时候去自动执行这个文件。

2025-12-04 21:59:47 384 1

原创 Python多线程编程

可以使用threading模块的Thread类的构造器来创建线程。

2025-12-04 00:35:43 253

原创 Python文件操作

必须先用内置的open()函数打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写。Python的内置库里提供了对文件的IO操作,可以对文件进行打开,读、写、关闭等操作。:独占创建模式(文件存在则失败)使用with open方式。:写入模式(覆盖文件)

2025-12-03 13:57:04 123

原创 Python类型注解

在代码中涉及数据交互的地方,提供数据类型的注解(显示说明)主要功能:为变量、函数参数和返回值等添加类型信息,提高代码可读性和可维护性。

2025-12-03 13:17:47 440

原创 RabbitMQ简单生产者和消费者实现

实现类RabbitMqServiceImpl。生产者重新发消息,然后验证消费者是否能获取。rabbitmq的配置与生产者一致。可登录控制台查看相关信息。pom引入共公模块。

2025-12-03 02:45:15 578

原创 安装Python第三方库

Python除了标准安装中包含的自带的模块,还有很多的第三方模块,或者叫库、包。这里显示已经安装的库,点击“+”号可以安装新的库。Django库,web开发领域。pandas库,数据分析领域。pyspark库,大数据领域。npmpy库,科学计算领域。使用PyCharm安装。

2025-12-02 00:52:39 246

原创 Python包

你可以把它想象成一个,这个文件夹里放了很多.py文件(模块),并且还有一个特殊的标识文件。:一个.py文件就是一个模块,里面可以包含函数、类、变量等。:一个包含文件和多个模块的目录。包还可以包含子包(子目录),从而形成一个层次化的结构。

2025-12-02 00:28:37 325

原创 Python模块

2、from 模块名 import 成员名1 [as 别名1],成员名2 [as 别名2],...成员名n [as 别名n];在Python的标准安装中,包含了一组自带的模块,这些模块被称为”标准库”。Python的模块,其实就是.py结尾 的Python文件,模块里可以定义类,变量、函数,以及可执行的代码。在模块中添加可执行的测试代码,模块被导入的时候,可执行代码也会被导和并且执行。1、import 模块名1 [as 别名1],模块名2 [as 别名2],模块名3 [as 别名3],……

2025-11-30 11:13:01 240

原创 安装RabbitMQ

浏览器访问:http://${服务器ip}:15672/,输入账号密码:guest/guest。记录本人在Linux环境安装RabbitMQ过程。

2025-11-28 15:54:55 183

原创 Python异常链

异常链是Python中一个重要的概念,它允许在捕获一个异常后抛出另一个异常,同时保留原始异常的信息。

2025-11-27 21:27:48 308

原创 ThreadLocal、InheritableThreadLocal、TransmittableTheadLocal三个工具案例

用法:在当前线程中,调用ThreadLocal的set()方法可以向当前线程中存入数据,然后在当前线程的其他位置可以调用ThreadLocal.get()获取刚才放入的数据。要点:ThreadLocal.set()和ThreadLocal.get()需要在同一个线程中执行。1、主线程中放入了张三,取出来也是张三2、线程thread1中放入了李四,取出来也是李四3、线程thread2中放放了王五,取出来也是王五。

2025-11-27 21:16:31 922

原创 Python异常处理

实际开发中,有时候系统提供的异常类型不能满足开发的需求。这时候你可以通过创建一个新的异常类来拥有自己的异常。异常类继承自Exception类,可以直接继承,或者间接继承。

2025-11-27 21:15:44 412

原创 Python枚举类

枚举(Enumeration)是 Python 3.4 引入的标准库功能,用于创建具有命名常量的枚举类型。枚举使代码更清晰、更易维护。在某些情况下,一个类的对象是有限且固定的,比如季节,它只有4个对象,再比如星期,只有星期一到星期日。这种实例有限且固定的类,在Python中被称为枚举类。枚举类不能被修改,也不能被继承。

2025-11-27 00:03:28 192

原创 Python的动态性

Python是动态语言,动态语言的典型特征就是:类、对象的属性、方法都可以动态增加和修改。对象.方法名 = 函数名。类名.属性 = 属性。类名.方法名=函数名。对象.属性 = 属性。

2025-11-27 00:03:08 130

原创 Python多态

在很多静态语言(如 Java, C++)中,多态通常是通过继承和重写父类方法来实现的。Python 也支持这种方式,但它不是必须的。多态,是指多种状态,即完成某个行为时,使用不同的对象会得到不到的状态。是面向对象编程的三大基本特征之一。是 Dog、Cat 还是 Duck。方法,函数就能正常工作。它只假设这个对象有一个。

2025-11-26 22:59:08 140

原创 Docker-Compose理解

如果需要同时部署好多个服务,难道要每个服务单独写Dockerfile然后在构建镜像,构建容器,这样累都累死了,所以docker官方给我们提供了docker-compose多服务部署的工具。例如要实现一个web微服务项目,除了web服务容器本身,往往还需要再加上后端的数据库mysql服务容器,redis服务,注册中心,甚至还包括负载容器等等。docker建议我们每一个容器中只运行一个服务,因为docker容器本身占用资源极少,所以最好是将每个服务单独的分割开来,但是这样我们又面临了一个问题?

2025-11-26 20:20:42 167

原创 Docker仓库理解

你可以从这里拉取(下载)官方或社区制作的镜像(如 Nginx, MySQL, Redis),也可以将自己的镜像推送(上传)上去。构建镜像的目的:在其他机器或者其他环境运行程序。因此需要把镜像传到目的地去,利用Docker仓库完成传输过程。一个集中存储和分发 Docker 镜像的地方,类似于 GitHub 之于代码。公司内部可以搭建自己的私有仓库,用于存放内部应用的镜像。

2025-11-26 01:20:01 106

原创 Docker容器理解

在容器运行时,Docker 会在镜像的只读层之上,添加一个可写的容器层。所有对容器的修改(如创建文件、安装新软件)都发生在这个可写层。当容器被删除时,这个可写层也会被删除。多个容器可以共享同一个主机操作系统内核,启动速度快,资源占用极低。,类似于由“类”创建出来的“对象”。容器与宿主机以及其他容器是相互隔离的。容器是真正运行应用程序的地方。

2025-11-26 01:15:27 169

原创 Python类的继承

继承是面向对象的三大特征之一,也是实现软件复用的重要手段。Python的继承是多继承机制,即一个子类可以同时有多个直接父类。语法:class 子类名(父类1,父类2,……)子类继承父类的属性和方法,同时子类可以扩展新的属性和方法。

2025-11-26 00:59:47 212

原创 Python隐藏和封装

封装是面向对象的三大特征之一(另外两个是继承和多态),它指的是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类所提供的方法来实现对内部信息的操作和访问。Python里私有属性和方法的定义,命名以__开头(两个下划线)私有属性和方法,外部对象无法直接访问,否则报错。私有属性和方法只能类内部通过self访问使用。

2025-11-25 22:58:49 279

原创 Python类和对象

在面向对象的程序设计过程中有两个重要概念:类(class)和对象(object,也被称为实例,instance),其中类是某一批对象的抽象,可以把类理解为某种概念,对象才是一个具体存在的实体。Python类里面的__init__方法就是类的构造方法,用作构造对象,同时还可以给对象初始化属性值用。假如类里面没有写init构造方法,默认会提供一个空的构造方法。类里面访问成员变量,可以用self关键字,类中也有方法,用来描述对象行为。类中的方法和前面函数语法一致。self表示当前的类对象。

2025-11-25 00:17:01 183

原创 Python lambda匿名函数

lambda匿名函数语法:lambda 传入参数:函数体注:传入参数可以有多个,用逗号分隔;函数体只能写一行,不支持多行。

2025-11-24 22:46:17 175

原创 Python函数返回值

语法是return 返回值1,返回值2,……复杂业务情况,函数可以有多个返回值,类型也不限制。Python支持使用函数作为其他函数的返回值。

2025-11-21 00:21:48 216

原创 Python函数赋值变量

Python的函数也是一种值:所有函数都是function对象,这意味着可以把函数本身赋值给变量。

2025-11-21 00:02:12 100

原创 Python函数的不定长参数

不定长参数,主要用于不确定调用的时候会传递多少个参数的场景。通过字典dict类型的**kwargs来实现。不定义参数也分为位置传递,和关键字传递两种。通过元组tuple类型的*args来实现。

2025-11-20 23:43:07 240

原创 Python字典

1、通过key值来获取对应的value,语法:字典["key"],也可以是单引号,如果访问的key在字典里不存在,则报错。2、新增或者修改元素,语法:字典["key"]=value,如果key不存在,就是新增,如果key存在,就是修改。字典也是Python提供的一种常用的数据结构,它以一种“键-值对”的形式存储数据,具有极高的查找效率。:字典使用哈希表实现,无论字典有多大,查找、插入、删除操作的平均时间复杂度都是 O(1)。:必须是不可变的类型(如字符串、数字、元组),且必须是唯一的。

2025-11-19 23:42:56 264

原创 Docker镜像理解

这证明了镜像的本质就是文件集合。,它包含了创建 Docker 容器所需的所有文件和配置信息。从镜像仓库(如 Docker Hub)拉取一个镜像到本地。将镜像保存为一个 tar 归档文件,用于备份或迁移。:镜像是光盘,容器是安装好并正在运行的虚拟机系统。根据 Dockerfile 构建一个新的镜像。:镜像是“类”,容器是这个“类”的“实例”。查看一个镜像的构建历史(各层信息)。将本地的镜像推送到镜像仓库。删除本地的一个或多个镜像。列出本地主机上的所有镜像。)合并成一个统一的视图。给镜像打一个新的标签。

2025-11-19 23:00:26 363

原创 Docker解决了什么问题

2025-11-19 13:23:08 116

原创 Python集合set

赋值定义:集合变量名称={元素1,元素2,元素3,元素4,……}空集合定义:集合变量名称=set()

2025-11-19 01:39:53 217

原创 Python容器序列切片

序列是指内容连续且有序的一类数据容器,在 Python 中,(如列表、元组、字符串等)都支持语法:序列[起始下标:结束下标:步长],返回一个新的序列。

2025-11-19 01:20:04 199

原创 Python元组

赋值定义:无组变量名称=(元素1,元素2,元素3,元素4,……)空元组定义:元组变量名称=()元组变量名称=tuple()

2025-11-18 00:30:35 126

原创 理解Docker思想

或直接通过 CRI 接口与容器运行时交互,而这一切的接口设计都源于 Docker 确立的范式。Kubernetes 的 Pod、Deployment 等资源,其底层操作容器的逻辑与 Docker 命令的思想一脉相承。集装箱出现后,所有货物都被打包进标准尺寸的箱子里,运输工具(船、卡车、火车)也只关心集装箱,而不关心里面的具体货物。当容器启动时,Docker 会将这些只读层叠加,并在最顶 层加上一个可写的容器层,形成一个统一的文件系统视图。容器内的进程与宿主机和其他容器的进程是隔离的。

2025-11-17 01:01:42 462

原创 Python列表

从列表左侧开始,下标索引从0开始,第一个元素下标索引是0,第二个元素下标索引是1,第N个元素下标索引是N-1。列表是多个元素的集合,是一种有序、可变的序列类型,可以通过下标(索引)来访问列表中的元素。7.pop(元素下标),取出元素,并从列表删除元素,方法返回该元素。2.index(元素)方法,查找列表中指定元素的下标,不存在就报错。3.insert(下标,元素),在指定下标位置元素之前,插入元素。列表变量名称 = [元素1,元素2,元素3,元素4,…10.count(元素),统计某元素在列表中的个数。

2025-11-16 02:00:30 512

原创 Python变量作用域

在程序中定义一个变量时,这个变量是有作用域的,变量的作用范围被称为它的作用域。x = 10 # 局部变量print(x) # 可以访问my_function() # 输出: 10# print(x) # 这里会报错,x在函数外部不可访问在嵌套函数中,内部函数可以访问外部函数的变量。x = "outer" # 嵌套作用域变量print(x) # 可以访问外部函数的变量inner()outer() # 输出: outer在模块级别定义的变量具有全局作用域。

2025-11-15 00:46:47 1458

空空如也

空空如也

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

TA关注的人

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