- 博客(49)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Django之数据库并发处理
1.数据库并发处理问题在多个用户同时发起对同一个数据提交修改操作时(先查询,再修改),会出现资源竞争的问题,导致最终修改的数据结果出现异常。比如限量商品在热销时,当多个用户同时请求购买商品时,最终修改的数据就会出现异常 下面我们来写点代码还原一下现象:1.新建项目Optimistic locking,创建应用app01,编辑models创建一张表并执行数据库迁移,如下:fro...
2018-08-25 03:38:02
9032
2
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 在Django中使用数据库事务
数据库事务 在保存数据的过程中,涉及多张表的数据修改,对这些数据的修改应该是一个整体的事务,即要么一起成功,要么一起失败。 Django中对于数据库的事务,默认每执行一句数据库的操作,即会自动提交,我们需要在数据修改中自己控制数据库事务的执行流程。在Django中可以通过django.db.transaction模块提供的atomic来定义一个事务,atomic提供两种...
2018-08-23 23:31:54
1814
原创 JAVA_面向对象_扩展
四种权限修饰符java 有四种权限修饰符:public > protected > (default) > privatepublicprotecteddefaultprivate同一个类(自己)yesyesyesyes同一个包(同级)yesyesyesNO不同包的子类(继承)yesyesNONO...
2019-03-08 00:11:21
246
转载 金句积累
本周金句1、你不应该进入那种行业,做了两年的人可以和那些已经做了二十年的人,具有一样的工作效率。– 《如何成功》2、你的目标应该是,为你的现状 ---- 财产、销售额、影响力等等----添加一个零。我总希望,我的下一个工作,将使得职业生涯的其余部分,看起来只是这个工作的一个脚注。– 《如何成功》3、自信很重要。我认识的最成功的人,几乎都自信到妄想的地步。这是因为如果你不相信自己,就很难产...
2019-03-07 14:05:51
834
原创 JAVA_面向对象_多态
多态图解代码中体现多态性Format:父类名称 对象名 = new 子类名称();or接口名称 对象名 = new 实现类名称();// 父类public class Father { public void method(){ System.out.println("parent class method call"); } pub...
2019-03-06 01:34:36
225
原创 JAVA_面向对象_接口
接口定义接口就是多个类的公共规范接口是一种引用数据类型,最重要的内容就是其中的抽象方法定义格式:public interface MyInterfaceAbstract { // 这是一个抽象方法(public abstract 可省略) public abstract void methodAbs();}如果是java 7,那么接口中可以包含:常量、抽象方法如...
2019-03-05 01:58:34
231
原创 JavaWebservice
安装tomcathttps://www.cnblogs.com/purplestone/p/3964207.htmlIntelliJ IDEA 发布WebServicehttps://www.cnblogs.com/shaosks/p/8351077.html如果需要返回 xml 格式内容,可以使用 dom4j 包实现具体的业务处理。...
2019-03-03 16:00:05
148
原创 Oracle_建表语句示例
最近用到Oracle,把oracle的一些操作记录一下-- Create tablecreate table C_DPRECORD( ID NUMBER(11) not null, '主键' 0 DEV_ID VARCHAR2(50) not null, '设备ID'...
2019-03-01 10:42:28
14448
原创 SQLAlchemy_ORM_类继承(抽象类)
# -*- coding:utf-8 -*-from sqlalchemy import func, ForeignKey, Columnfrom sqlalchemy.orm import relationshipfrom sqlalchemy.types import String, Integer, DateTime, DECIMALfrom sqlalchemy.dialect...
2019-02-25 10:03:07
1562
原创 JAVA_面向对象_继承
继承在继承的关系中,子类就是一个父类,也就是说,子类可以被当做父类看待例如:父类是员工,子类是程序员,那么程序员就是一个员工// 员工类public class Employee{ String name; int age;}// 程序员类(继承员工类)public class Programer extends Employee{} // 主方法pub...
2019-02-24 01:21:50
207
原创 JAVA常用API-第一部分
Scanner类Scanner类可以实现键盘输入数据,到程序中Scanner类是引用数据类型导入Scanner(为什么String类不需要导入?因为:只有 java.lang 包下的内容不需要导包,其它的包都需要手动导入)import java.util.Scanner;public class DemoScanner { public static void main(S...
2019-02-17 22:52:31
264
原创 常用的linux命令
搜索文件中的指定内容,保存到另一个文件中写到新的文件:grep "result: True" ~/logs/server_db/info.log > ~/logs/server_db/success.log追加到文件中:grep "result: /[&quo
2019-02-14 14:11:03
145
原创 JAVA面向对象
对象的创建**导包:**也就是指出需要使用的类,在什么位置?**创建:**类名称 对象名 = new 类名()**使用:**成员变量、成员方法public class Phone{ // 成员变量 String brand; double price; String color; // 成员方法 public void call(St...
2019-02-13 22:26:44
134
原创 JAVA基础语法
java基础语法常量:在程序运行期间,固定不变的量常量的分类:字符串常量:凡是用双引号引起来的部分,叫做字符串常量,例如:“abc”, “hello”, “123”;整数常量:直接写上的数字,没有小数点,例如:100, 200, 0, -250;浮点数常量:直接写上的数字,有小数点,例如:2.5, -3.14, 0.0;字符常量:凡是用单引号引起来的单个字符,就叫做...
2019-02-01 00:28:08
183
原创 MySQL查询
MySQL查询数据的准备– 创建一个数据库create database test charset=utf8;– 使用一个数据库use test;– 显示当前使用的数据库select database();– 创建 students 数据表create table students( id int unsigned primary key auto_increment no...
2019-01-31 17:19:29
144
原创 MySQL基本操作
MySQL基本操作MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,后来被Sun公司收购,Sun公司后来又被Oracle公司收购,目前属于Oracle旗下产品列:字段;行:记录一、基本类型(常用)数字类型字节大小有符号范围(Signed)无符号范围(Unsigned)TINYINT1-128 ~ 1270 ~ 255SMALLI...
2019-01-31 16:29:23
151
原创 pandas数据类型之dataframe
Pandas 简介:python数据分析library是基于Numpy构建的一个library有一种用python做Excel/SQL/R的感觉现在流行的机器学习框架 Tensorflow/PyTorch 等等,语法都与Numpy比较接近# encoding=utf-8import numpy as npimport pandas as pddef main(): "...
2019-01-28 00:21:06
1442
原创 pandas数据类型之series
Pandas 简介:“”"python数据分析library是基于Numpy构建的一个library有一种用python做Excel/SQL/R的感觉现在流行的机器学习框架 Tensorflow/PyTorch 等等,语法都与Numpy比较接近“”"# encoding=utf-8import numpy as npimport pandas as pddef main(...
2019-01-28 00:18:24
882
原创 Numpy基础
1.如何生成一个ndarray# encoding=utf-8# 学习numpy# Numpy 简介:"""是python语言的一个library只支持矩阵操作和运算由C语言写成,非常高效pandas也是基于Numpy构建的一个library现在流行的机器学习框架 Tensorflow/PyTorch 等等,语法都与Numpy比较接近""&
2019-01-12 00:48:21
311
2
转载 进了985、211才知道:优秀的朋友圈,有多重要?
1知乎答主陈思起讲过他在清华大学蹭课的一段经历。课堂上,下课的瞬间,老师就被问问题的学生包围了好几层;食堂里,两个学生吃饭时一直在讨论一个实验,而后索性餐盘一丢,拿出草稿列方程。他感慨道:清华的学生,对学问与智慧的追求竟是如此纯粹、虔诚。而反观起其他很多学校的校风:混日子,混学分,混网吧,六十分万岁,今朝有酒今朝醉;拿着父母的辛苦钱花天酒地,游戏人生;总做着屌丝逆袭的春秋大梦,却连一节课...
2018-12-11 09:55:06
607
原创 SQLAlchemy
sqlalchemy中可以使用query对象的with_entities()方法改变query内容。例如:我们经常需要查询数据,同时返回数据条数,通常会写成:query = session.query(XXX, XXX, XXX).filter(XXX, XXX, XXX)data = query.all()count = query.count()或query = session....
2018-11-27 13:16:09
915
原创 Python后端编码规范
Python后端编码规范1首要:保持一致性原则如果你只是改动一个大代码块的其中一小部分,那么请将你改动代码的编码风格与周围代码的编码风格保持一致为了保持一致性,在下列情况下可以违背本规范:遵循本规范会降低可读性与周围其他代码不一致代码在引入规范前完成,暂时没有理由修改2代码布局2.1缩进每级缩进使用4个空格括号中的续行应使用垂直隐式缩进或悬挂缩进使用垂直隐式缩进...
2018-09-19 15:58:56
913
原创 团队编码规范
团队编码规范1代码风格1.1缩进代码缩进要求:4个空白符;所有块状结构都要求缩进,switch语句缩进要合理;坚持一致原则,维护同事的代码时,应该保持原有的编码风格;1.2空格注释符两边的空白符必不可少;任何保留字与紧随其后的左括号之间要有一个空格;任何保留字与其前面的右大括号之间要有一个空格;在任何二元或三元运算符的两侧必须有空格;一元运算符与操作对象之间不允许有空格...
2018-09-19 15:56:17
1067
原创 任务拆分推进
任务拆分推进1.目的让任务进行尽量可控;对于团队:让团队其他成员可以知晓开发的进展,无论是项目leader还是配合的伙伴;对于个人:在开发前期可以过一遍所有细节,一定程度上避免了后期的返工(可以跟产品复述一遍项目细节),而且讨论进度时,任务翻一翻,很有用。2.表现形式对于当周大方向的任务,后端必做,前端选做;形式不限,无论是根据功能拆分,还是根据时间线拆分;通过在tower对应任务...
2018-09-19 15:46:44
1582
原创 接口文档规范
接口文档规范前言:为了规范化项目管理,方便团队扩充后的新同事对项目的熟悉及自主入手开发,现决定将项目文档逐步规范化。所有新增接口,按照规范格式撰写接口文档;所有修改的接口,如果之前有对应的接口文档,则修改相应文档,若没有,则新建接口文档;文档目录位置的选择,以类似“商户后台→对账中心(大板块)→所有账单(子板块)”的方式建立或选择;同一个页面,一类功能的不同接口,可以放在同一个文档中;...
2018-09-19 15:45:17
1308
原创 版本管理和上线操作规范
版本管理和上线操作规范Git版本管理规范新功能开发时,最先开始开发的人员务必基于远程主分支新建分支进行开发,所有正在开发阶段的功能,远程仓库都应有相应的分支;新功能分支命名时,不得与远程仓库任何其他分支重名;开发中的功能请保持本地和远程分支的及时同步,以免本地丢失,同时方便协作开发;当某个功能开发分支已经合并到主分支后,如需对其进行增量开发或修改,必须重新走新功能开发流程,避免代码冲突...
2018-09-19 15:44:08
3631
原创 Python后端开发注意事项(Tornado)
后端开发注意事项(Tornado)对于实时性要求高的数据,始终使用主库session进行查询访问,而非从库;session在commit前,外部是看不到改变的;使用 SQLAlchemy ORM 建立数据库模型时,统一使用sqlalchemy.schma.index(name, *expressions, **kw)方式建立索引,构建 tuple 传入数据表类的 __table_...
2018-09-19 15:40:59
789
原创 Tornado的请求与响应
Tornado中的输入与输出指的是站在服务器端的角度,输入表示客户端发送请求到服务器端,输出表示服务器端返回数据给客户端1.输入回想一下,客户端使用HTTP协议向服务器端传参有哪几种途径?url,问号后面的查询字符串(query_str),形如:?key1=value1&key2=value2提取url特定部分,如/blogs/2018/09/13,可以在服务器端的...
2018-09-14 23:52:29
4291
3
原创 Tornado入门
1.什么是Tornado?Tornado全称 Tornado Web Server,是一个用Python语言编写的Web服务器兼Web应用框架,由FriendFeed公司在自己的网站FriendFeed中使用,被Facebook收购之后在2009年9月以开源软件形式开发给大众。特点:Tornado是一个轻量型的Web框架,拥有异步非阻塞IO的处理方式;有较为出色的抗负载、处理高并发...
2018-09-14 01:11:04
214
翻译 Django 介绍
1.简介Django,是用python语言写的开源web开发框架,并遵循MVC设计。 Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以”插件”形式服务于整个框架,Django有许多功能强大的第三方插件,你甚至可以很方便的开发出自己的工具包。这使得django具有很强的扩展性。它还强调快速开发和DRY(DoNotRepeatYourself)原则...
2018-09-07 00:51:32
417
原创 Python知识点记录
最近在找工作,说是面试,可总少不了笔试,每天收集一些知识问答,就当复习巩固了,加油!1.今天面试被问到:怎么在linux中的文件中查找你需要的内容? 答:当然是使用grep命令了,下面记录一下grep命令的详细使用方法。grep命令基本格式:grep [options] ‘pattern’ filename[options]主要参数: -c:只输出匹配行的计数。 ...
2018-09-02 00:06:06
161
原创 Django REST framework 之序列化器
为什么要使用序列化器?我们在后端视图中操作的最多的就是:将前端传递的json或xml数据先转换成python中字典的形式;操作数据库,查询数据对象,获取数据对象的字典数据;将字典转化成前端需要的数据类型(json或xml,后面都拿json来做说明)都需要经过这样的转换:json → dict → obj → dict → json而当我们使用序列化器后:将请求的数据(...
2018-09-01 23:25:33
233
原创 Centos7中安装Python虚拟环境
Python虚拟环境前言: 之前已经写好了在centos7中源码安装python3的解释器,源码安装目录:/usr/local/python3.6.5 安装配置链接:https://blog.csdn.net/m0_37714245/article/details/818138691.为什么要搭建虚拟环境?问题:如果在一台电脑上, 想开发多个不同的项目, 需要用到同一个包的不同版...
2018-08-27 00:09:36
5079
1
原创 Django项目集成支付宝支付功能
在沙箱环境下测试支付宝接口电脑网站支付流程接入步骤创建应用配置密钥搭建和配置开发环境接口调用1.创建应用新建项目alipay,创建子应用payment2.配置密钥生成应用的私钥和公钥opensslOpenSSL> genrsa -out app_private_key.pem 2048 # 私钥RSA2OpenSSL> rsa -...
2018-08-25 21:17:51
3367
2
原创 支付宝沙箱环境配置与使用
准备沙箱环境支付宝给我们提供了一个沙箱环境,在这里,我们可以使用虚拟货币进行支付测试,但是与真实的支付流程是一样的。1.支付宝开发平台登录https://open.alipay.com/platform/home.htm 2.登录之后进入我的开放平台3.支付宝开发者文档沙箱应用:https://docs.open.alipay.com/200/10531...
2018-08-25 19:42:38
3573
原创 在 Django REST Framework 中实现购物车逻辑 && 装饰器形式实现购物车合并
购物车逻辑-增删改查1.需求分析在用户登录或未登录的状态下,都可以保存用户的购物车数据用户可以对购物车数据进行增、删、该、查保存购物车中商品数量,是否勾选(在订单页面会使用到)在用户登录时,合并cookie的购物车数据到redis(最新数据以redis为准)2.实现方法对于未登录的用户,将购物车数据存储到浏览器cookie中对于已登录的用户,将购物车数据存储到后端...
2018-08-22 13:29:35
799
原创 Linux 源码安装配置 Redis
安装Redis1.下载源码包首先我们需要在官网上下载源码包 下载链接:https://redis.io/download这里我下载的版本是:redis-4.0.10.tar.gz接下来接下来把压缩包上传到centos7系统的 /usr/local/src 目录下 然后 cd 到该目录下,执行解压缩命令: tar -zxvf redis-4.0.10.tar.gz移动目录...
2018-08-19 23:54:25
263
原创 在 centos7 中安装配置 python 3 解释器
源码安装python3解释器背景:时到如今,想必大家都进入python3时代了吧,可以centos里面默认的python环境还是python2,无论是个人开发,还是公司的项目部署,想必以后都离不开python3的环境了,今天在这里记录一下源码安装python3的解释器的详细步骤吧,come on!1.下载源码包首先我们得去官网下载python解释器的源码安装包,这里我下载的是pyt...
2018-08-18 22:37:29
2285
原创 用Python写一个多线程/多进程的TCP服务器
多线程的TCP服务器背景:同学公司的传感器设备需要将收集的数据发到服务器上,前期想写一个简单的服务器来测试下使用效果,设备收集的数据非常的重要,所以考虑使用TCP协议来实现。因为只是测试使用,所以采用多线程的方式,毕竟节省资源嘛(使用协程时会导致I/O阻塞)开门见山,直接搬上来了一、tcp_server_v1.0使用说明: 1.运行环境:python3解释器,并安装sock...
2018-08-18 15:29:58
4609
1
原创 Nginx安装配置详解 + 反向代理部署 + 搭建NFS共享存储
WebServer—Nginx1.认识NginxNginx优点:1.轻量级web容器(相对于apache占用更少的内存及存储资源)2.反向代理服务器3.采用epoll网络IO模型,响应速度极快,处理高并发能力强epoll工作原理:内存映射(memory map)事件通知机制(event notice)epoll在Linux中的实现过程可以参考:http:/...
2018-08-18 15:03:41
3056
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人