自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(165)
  • 资源 (1)
  • 收藏
  • 关注

原创 MySQL 性能优化的 21 个最佳实践

1. 为查询缓存优化你的查询 大多数的 MySQL 服务器都开启了查询缓存。这是提高性最有效的方法之 一,而且这是被 MySQL 的数据库引擎处理的。当有很多相同的查询被执行了多 次的时候,这些查询结果会被放到一个缓存中,这样,后续的相同的查询就不 用操作表而直接访问缓存结果了。  这里最主要的问题是,对于程序员来说,这个事情是很容易被忽略的。因 为,我们某些查询语句会让 MySQL 不使用缓...

2020-02-15 08:11:17 3303 4

原创 mysql数据库索引

索引的本质:数据结构定义:排好序的可快速查找的数据结构。数据库除了数据本身,数据库还维护着一个满足特定查找算法的数据结构。这些数据结构以某种方式指向数据。这样就可以在这些数据结构的基础上实现高级查找算法。这种数据结构叫作索引。一般来说,索引本身也很大,不可能全部存在内存中,因此索引往往以索引文件的形式存储在磁盘上。我们平时所用说的索引,如果没有特别指明,都是指B树(多路搜索树,并不一定是二叉的)结构组织的索引。其中聚集索引,次要索引,覆盖索引,复合索引,前缀索引,唯一索引都是使用B+树,除了B+树这种类型

2021-03-26 21:43:11 211 2

原创 Mysql逻辑架构分层

1.连接层最上层是一些客户端和连接服务,包含本地sock通信和大多数基于客户端/服务端工具实现的类似于tcp/ip的通信。主要完成一些类似于连接处理、授权认证、及相关的安全方案。在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程。同样在该层上可以实现基于SSL安全链接。服务器也会为安全接入的每个客户端验证它所具有的操作权限。2.服务层第二层架构主要完成大多数的核心服务功能,如SQL接口,并完成缓存查询,SQL的分析和优化及部分内置函数的执行。所有跨存储引擎的功能也在这一层实现,如过程、函.

2021-03-23 20:31:27 277 1

原创 用静态工厂方法代替构造器

静态工厂方法与构造器不同得优势:他们有名称当一个类需要多个带有相同签名的的构造器时,就需要静态工厂方法不必在调用它们的时候都创建一个新对象它们可以返回原返回类型的任何子类型的对象所返回的对象的类可以随着每次调用而发生变化,这取决于静态工厂方法的参数值方法返回的对象所属的类,在编写包含该静态工厂方法的类可以不存在静态工厂方法与构造器不同得劣势:类如果不包含公有的或者受保护的构造器,就不能被子类化程序员很难发现它们...

2021-02-27 14:07:12 177

原创 Maven学习

什么是MavenApache Maven是一个项目管理工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档。Maven的作用Maven是跨平台的项目管理工具。主要服务于基于Java平台的项目构建,依赖管理和项目信息管理。项目构建:项目构建包括清理,···,编译,测试,报告,打包,部署···等步骤传统方式管理jar包依赖的问题:jar包冲突jar包依赖jar包体积过大jar包在不同阶段无法个性化配置使用maven方式管理jar包依赖的好处:解决

2020-12-30 15:12:03 112

原创 常用 Git 命令清单

下面是常用 的Git 命令清单。几个专用名词的译名如下。Workspace:工作区Index / Stage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库一、新建代码库# 在当前目录新建一个Git代码库$ git init# 新建一个目录,将其初始化为Git代码库$ git init [project-name]# 下载一个项目和它的整个代码历史$ git clone [url]二、配置Git的设置文件为== .gitconfig ==,它可以在.

2020-12-18 21:43:30 124 1

原创 第44篇-如何将python打包成可执行的exe(包含openpyxl)

如何将python打包成可执行的exe安装pyinstaller执行命令:pip install pyinstaller安装完后,检查安装成功与否:pyinstaller --versionPyInstaller原理简介PyInstaller其实就是把python解析器和你自己的脚本打包成一个可执行的文件,和编译成真正的机器码完全是两回事,所以千万不要指望成打包成一个可执行文件会提高运行效率,相反可能会降低运行效率,好处就是在运行者的机器上不用安装python和你的脚本依赖的库。在

2020-12-11 21:29:29 1274

原创 第43篇:使用openpyxl对excel进行操作,报错:AttributeError: ‘int‘ object has no attribute ‘upper‘

使用openpyxl对excel进行操作,报错:这是由于openpyxl的版本导致的错误可以先查看一下自己的openpyxl的版本:查询发现server上的openpyxl 版本是2.3.0. 在新版本中 worksheet.py 的 cell()方法已经做了更新。所以这样写:sheet.cell(1, 1).value 也没事。但是在2.3.0中要这样写:heet.cell(row=1, column=1).value才行。...

2020-12-11 17:56:59 2308

原创 常用的正则表达式-第42篇

一、校验数字的表达式数字:^[0-9]*$n位的数字:^\d{n}$至少n位的数字:^\d{n,}$m-n位的数字:^\d{m,n}$零和非零开头的数字:^(0|[1-9][0-9]*)$非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$有两位小数的正实数:^[0-9]+(.[0-9]{2})?$

2020-12-06 22:47:52 118

原创 python爬虫--第41篇

什么是网络爬虫通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程。爬虫的价值实际应用价值爬虫带来的风险爬虫干扰了被访问网站的正常运营爬虫抓取了受法律保护的数据或信息爬虫在使用场景中的分类:通用爬虫:抓取系统重要组成部分,抓取的是一整张页面的数据聚焦爬虫是建立在通用爬虫的基础之上。...

2020-11-13 09:11:41 190

原创 PyCharm快捷键--第40篇

PyCharm快捷键1、编辑(Editing)Ctrl + Space 基本的代码完成(类、方法、属性)Ctrl + Alt + Space 快速导入任意类Ctrl + Shift + Enter 语句完成Ctrl + P 参数信息(在方法中调用参数)Ctrl + Q 快速查看文档F1 Web帮助文档主页Shift + F1 选中对象的Web帮助文档Ctrl + 悬浮/单击鼠标左键 简介/进入代码定义Ctrl + Z 撤销上次操作Ctrl + Shift + Z 重做,恢复上次的撤销

2020-11-11 10:47:34 77

原创 Django models中的meta选项---第39篇

Django models中的meta选项通过一个内嵌类 “class Meta” 给你的 model 定义元数据, 类似下面这样:class Foo(models.Model): bar = models.CharField(maxlength=30) class Meta: # ...Model 元数据就是 “不是一个字段的任何数据” – 比如排序选项, admin 选项等等.下面是所有可能用到的 Meta 选项. 没有一个选项是必需的. 是否添加 cla

2020-11-10 10:55:10 597

原创 Django 中的cookie 与 session---第38篇

Cookie 是存储在客户端计算机上的文本文件,并保留了各种跟踪信息。识别返回用户包括三个步骤:服务器脚本向浏览器发送一组 Cookie。例如:姓名、年龄或识别号码等。浏览器将这些信息存储在本地计算机上,以备将来使用。当下一次浏览器向 Web 服务器发送任何请求时,浏览器会把这些 Cookie 信息发送到服务器,服务器将使用这些信息来识别用户。Cookies一个 Web 服务器可以分配一个唯一的 session 会话 ID 作为每个 Web 客户端的 cookie,对于客户端的后续请求可以使

2020-11-09 10:57:15 180

原创 Django---Path标准语法----第37篇

path(<route>, <view> [,name=None,**kwargs])

2020-11-05 20:11:07 137 1

原创 django models 之字段详解-----------第36篇

简单介绍一下创建模型时会涉及到的字段类型,以及字段设置的含义Django models 的字段类型models.AutoField —自增列 = int(11) 如果没有的话,默认会生成一个名称为 id 的列,如果要显示的自定义一个自增列,必须将给列设置为主键 primary_key=True。models.CharField —字符串字段 单行输入,用于较短的字符串,如要保存大量文本, 使用 TextField。必须 max_length 参数,django会根据这个参数在数据库层

2020-11-04 21:46:58 505

原创 Django ORM – 多表实例--第35篇

Django ORM – 多表实例表与表之间的关系可分为以下三种:一对一: 一个人对应一个身份证号码,数据字段设置 unique。一对多: 一个家庭有多个人,一般通过外键来实现。多对多: 一个学生有多门课程,一个课程有很多学生,一般通过第三个表来实现关联。创建模型接下来我们来看下多表多实例。from django.db import modelsclass Book(models.Model): id = models.AutoField(primary_key=True)

2020-11-04 21:39:33 162

原创 Django ORM - 单表实例---第34篇

创建app应用我们重新创建一个项目 app01django-admin-script.py startapp app01在 settings.py 中找到 INSTALLED_APPS 这一项,如下:INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django

2020-11-03 17:01:06 168

原创 Django如何创建超级管理员---第33篇

你可以通过命令 python manage.py createsuperuser 来创建超级用户python manage.py createsuperuser如何出现以下问题:创建失败那么就先执行:python manage.py migrate然后执行python manage.py createsuperuser安装提示步骤进行。注:输入密码时不显示然后就创建成功了。启动开发服务器,然后在浏览器中访问http://127.0.0.1:8000/admin/,得到如下界面

2020-11-03 11:30:57 400

原创 请求对象: HttpRequest 对象---第33篇

以下介绍几个常用的 request 属性。1、GET数据类型是 QueryDict,一个类似于字典的对象,包含 HTTP GET 的所有参数。有相同的键,就把所有的值放到对应的列表里。取值格式:对象.方法。get():返回字符串,如果该键对应有多个值,取出该键的最后一个值。def runoob(request): name = request.GET.get("name") return HttpResponse('姓名:{}'.format(name))2、POST数据类

2020-11-03 11:07:53 868

原创 Django 表单-第32篇

Django 表单HTML表单是网站交互性的经典方式。HTTP 请求HTTP协议以"请求-回复"的方式工作。客户发送请求时,可以在请求中附加数据。服务器通过解析请求,就可以获得客户传来的数据,并根据URL来提供特定的服务。GET 方法我们在之前的项目中创建一个 search.py 文件,用于接收用户的请求:/Hello/Hello/search.py 文件代码:...

2020-11-02 22:31:19 91

原创 Django 模型-Django ORM-第27篇

Django ORMDjango 模型使用自带的 ORM。对象关系映射(Object Relational Mapping,简称 ORM )用于实现面向对象编程语言里不同类型系统的数据之间的转换。ORM 在业务逻辑层和数据库层之间充当了桥梁的作用。ORM 是通过使用描述对象和数据库之间的映射的元数据,将程序中的对象自动持久化到数据库中。使用 ORM 的好处:提高开发效率。不同数据库可以平滑切换。使用 ORM 的缺点:ORM 代码转换为 SQL 语句时,需要花费一定的时间,执行效率会

2020-11-02 19:31:26 280

原创 初识Django shell-第31篇

为什么需要Django shellDjango shell的使用通过如下命令进入shellpython manage.py shell

2020-11-01 10:01:54 50

原创 Django基本命令-第30篇

在DJango里django-admin.py和manage.py都是Django的命令工具集,用于处理系统管理相关操作,而manage.py是在创建Django工程时自动生成的,manage.py是对django-admin.py的简单包装,二者的作用基本一致。区别:1、django-admin存放在Python的site-packages\django\bin 里,manage.py存放在项目工程文件夹里。2、django-admin可以对不同的项目进行设置,而manege.py只能当前的工程有

2020-10-31 17:54:45 85

原创 生成玫瑰花代码

玫瑰

2020-10-31 17:10:26 4305

原创 Django第29篇:ModuleNotFoundError: No module named ‘pymysql‘

ModuleNotFoundError: No module named 'pymysql’解决方案执行:pip install PyMySQL就可以解决

2020-10-31 15:42:35 532

原创 Django创建数据库表出现:django.core.exceptions.ImproperlyConfigured: mysqlclient 1.4.0 or newer is required;

django.core.exceptions.ImproperlyConfigured: mysqlclient 1.4.0 or newer is required; you have 0.10.1 解决方案:解决项目的__init__文件加如下内容:import pymysqlpymysql.version_info = (1, 4, 13, "final", 0)pymysql.install_as_MySQLdb()就ok了。...

2020-10-31 15:37:59 262

原创 Django 模板标签-第26篇

变量模板语法:view:{"HTML变量名" : "views变量名"}HTML:{{变量名}}aa/HelloWorld/views.pyfrom django.shortcuts import renderdef runoob(request): views_name = "yuanyuana " return render(request, "runoob.html", {"name": views_name})templates 中的 runoob.html :

2020-10-12 13:14:06 1183

原创 Django 模板-第25篇

在上一篇中我们使用 django.http.HttpResponse() 来输出 “Hello World!”。该方式将数据与视图混合在一起,不符合 Django 的 MVC 思想。接下来将介绍 Django 模板的应用,模板是一个文本,用于分离文档的表现形式和内容。首先,在 aa目录底下创建 templates 目录并建立 runoob.html文件,整个目录结构如下runoob.html 文件代码如下:<h1>{{ hello }}</h1>从模板中我们知道变量使用

2020-10-11 22:06:44 116

原创 Django视图和 URL 配置-第24篇(9.28)

在先前创建的 yuanyuan目录下的yuanyuan 目录新建一个 views.py 文件,并输入代码:from django.http import HttpResponsedef hello(request): return HttpResponse("Hello world ! ")接着,绑定 URL 与视图函数。打开 urls.py 文件,删除原来代码,将以下代码复制粘贴到 urls.py 文件中:from django.conf.urls import url from

2020-09-28 21:33:52 104

原创 如何创建Django项目-第23篇

首先得安装Django如何安装Django,可以看下面这个文章Django安装Django也已经安装完毕,下面cd到一个自己准备的文件夹下创建一个Django项目吧,MySite是我们的项目名称(可以自定义哦)django-admin startproject MySite下面打开我们的pycharm,找到我们刚才创建的Django文件目录,然后打开它目录说明:manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。init.py: 一个空文件

2020-09-28 21:14:28 150

原创 Python中django卸载-第22篇(9.24)

查看当前系统中的django版本信息使用 show 来查看当前安装的 django库:命令: pip show django卸载django 使用pip命令来卸载Django:命令: pip uninstall django卸载成功 远远啊

2020-09-24 22:04:25 313

原创 Django 安装-第21篇(9.23)

在安装 Django 前,系统需要已经安装了Python的开发环境。接下来我们来具体看下Window系统下Django的安装。Window 下安装 Django如果你还未安装Python环境需要先下载Python安装包。1、Python 下载地址:https://www.python.org/downloads/2、Django 下载地址: https://www.djangoproject.com/download/Django 安装下载 Django 压缩包,解压并和 Python安装目录放

2020-09-23 22:31:52 84

原创 Django 教程-第20篇(9.23)

什么是Django?Django 是一个由 Python 编写的一个开放源代码的 Web 应用框架。使用 Django,只要很少的代码,Python 的程序开发人员就可以轻松地完成一个正式网站所需要的大部分内容,并进一步开发出全功能的 Web 服务 Django 本身基于 MVC 模型,即 Model(模型)+ View(视图)+ Controller(控制器)设计模式,MVC 模式使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。Python 加 Django 是快速开发、设计、部

2020-09-23 19:36:13 305

原创 Python 操作 MySQL 数据库-第19篇(9.21)

Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口。Python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库:GadFlymSQLMySQLPostgreSQLMicrosoft SQL Server 2000InformixInterbaseOracleSybase我还是喜欢用mysql不同的数据库你需要下载不同的DB API模块,例如你需要访问Oracle数据库和Mysql数据,你需要下载O

2020-09-21 21:10:31 271

原创 pycharm找不到MySQLdb模块解决方法-第18篇

Python2.7 Windows系统,在虚拟环境中安装了MySQL-Python包,在Python命令行中import MySQLdb没有提示错误,但在pycharm中运行manage.py Task 时却提示未安装MySQL-Python,解决办法:1.将下载好的MySQL-Python文件复制到Djangoproject(项目目录)>venv>Scripts下面,附位下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-pytho

2020-09-21 20:29:34 458

原创 Python 面向对象-第17篇(9.19)

python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。面向对象技术简介类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。数据成员:类变量或者实例变量, 用于处理类及其实例对象的相关的数据。方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法

2020-09-19 21:10:18 129

原创 Python 异常处理-第16篇(9.19)

python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误。你可以使用该功能来调试python程序。什么是异常?异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。一般情况下,在Python无法正常处理程序时就会发生一个异常。异常是Python对象,表示一个错误。当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。异常处理捕捉异常可以使用try/except语句。try/except语句用来检测try语句块中的错误,从而让except

2020-09-19 20:35:49 72

原创 Python 文件I/O-第15篇(9.19)

打印到屏幕最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式。此函数把你传递的表达式转换成一个字符串表达式,并将结果写到标准输出如下:print ("Python 是一个非常棒的语言,不是吗?")你的标准屏幕上会产生以下结果:读取键盘输入Python提供了两个内置函数从标准输入读入一行文本,默认的标准输入是键盘。如下:raw_inputinputraw_input函数raw_input([prompt]) 函数从标准输入读取一个行,并返回一个字符串(去掉

2020-09-19 18:37:43 92

原创 Python 模块-第14篇(9.19)

Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。模块让你能够有逻辑地组织你的 Python 代码段。把相关的代码分配到一个模块里能让你的代码更好用,更易懂。模块能定义函数,类和变量,模块里也能包含可执行的代码。import 语句模块的引入模块定义好后,我们可以使用 import 语句来引入模块,语法如下:import module1[, module2[,... moduleN]]from…import 语

2020-09-19 15:39:08 65

原创 Python 函数-第13篇(9.19)

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。定义一个函数你可以定义一个由自己想要功能的函数,以下是简单的规则:函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。函数内容以冒号

2020-09-19 15:23:31 191

Hibernate相应jar包.rar

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的JaveEE架构中取代CMP,完成数据持久化的重任。

2020-01-08

空空如也

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

TA关注的人

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