03 2016 档案
摘要:python是一种面向对象的语言。本文介绍如何用python进行面向对象的编程。 首先我们说下对象和类,类是一种类型的定义,对象是类的实例。 一、内置对象类型(内置类) 其实我们前面已经大量用到了对象,如字符串、列表、字典等,这些对象的类型是python的内建对象类型。 比如: a=[] 这其实就是
阅读全文
摘要:一、基本概念 使用python操作数据库,其基本的流程如下(其实所有开发语言访问数据库的流程都是这样)。 1、第一,引入相应数据库的python数据库接口模块,针对不同的数据库类型,有不同的数据库访问接口模块。可以理解这些接口模块提供了一些api接口,让python代码可以访问数据库。 2、获取数据
阅读全文
摘要:使用任何开发语言进行软件开发,都离不开语言提供的内置库(或Api),甚至说内置库的强大及使用是否方便都会影响大家对开发语言的选择。 python语言,一样提供了很多内置的功能,可供开发时使用。主要有如下几种: 一、内置语句 我们知道的最常见的就是赋值语句,通过运算符 = 将表达式赋值给某个变量。 除
阅读全文
摘要:我们来考虑下如下几种场景: 1、编写一个python程序,如果程序比较简单,则可以把代码放到一个python文件中。但如果程序功能比较多,可能需要多个python文件来组织源代码。而这些文件之间的代码肯定有关联,比如一个文件中的python代码调用另一个python文件中定义的函数。 2、我们编写程
阅读全文
摘要:如同别的开发语言,python也支持异常处理机制。本文介绍下它的基本语法。 一、异常的基本处理框架如下: 其中最后一个 except: 没有带异常类名,表示缺省处理,所有的前面没有处理的异常都会被它拦截。相当于 except Exception: ,因为所有的异常类的基类都是Exception。 举
阅读全文
摘要:python中的字典,就是通常说的map,即 key/value集合的数据结构。 本文来介绍下在python下如何使用字典。 对于map这种数据结构能干什么,我们就不说了,这是一个常见的数据结构,我们假设大家都理解了。 我们重点讲在python下如何使用它,其实就是熟悉相关的api方法了。 作为一个
阅读全文
摘要:一、元组 python中的元组和列表非常类似,核心区别是元组的内容初始化后是不可以修改的,而队列可以。 关于列表的详细介绍,可查看上一篇列表使用文章。 大部分场景下,能用元组的地方,都可以用列表。但有的场景,比如map的key值就不能用列表,只能用元组。 可以理解,元组是一个不可变列表。所以字符串应
阅读全文
摘要:同其它编程语言一样,python也提供了丰富的数据结构,以方便数据的处理。本文介绍两种最基本的数据集合,列表和元组的使用。 一、列表使用介绍 可以理解为一个有序的序列。其使用方式举例如下: list=[] #定义了一个空的列表list.append("hello1") #往列表的尾部插入一个元素li
阅读全文
摘要:本文介绍下python条件和循环语句的语法 一、if条件语句 语法格式如下: 说明:与其它语言的语法区别是,表达式或else后面要加 冒号 结尾。 语句块没有用一些标识符括起来,而是靠缩进来标记。 二、while循环 语法格式是: while 表达式: ........ 三、for循环 for循环用
阅读全文
摘要:本文介绍下python的基本语法 一、变量定义 不需要说明类型,也不需要像js等脚本语言使用var等标识符。直接声明即可,如: num=1 说明:上面语句声明了一个变量num,并在声明时初始化值为 1 二、常量 同其它语言类似。注意字符串常量既可以用单引号,也可以用双引号扩起。 注意None是pyt
阅读全文
摘要:python是一种解释型的、面向对象的、带有动态语义的高级程序设计语言。本文介绍下python的基本知识。 一、安装 各种操作系统有自己的安装方法,linux系统一般都自带了python的环境。这里不再介绍。 二、检查 安装好python后,可在命令行下执行如下命令检查当前环境下python的版本:
阅读全文
摘要:早期开发的时候一直用c/c++,后来主要用的是java。最近需要用下c#。 熟悉了下c#,发现c#语言在对c/c++基础上做了很多简化,同时参考了很多java的语法习惯,本来在语法上c/c++就有很多和java类似的地方,现在c#就类似的地方更多了,不过还是有很多区别。 本文总结下c# 和c++及
阅读全文
摘要:上篇文章我们介绍了如何利用DataSet 和 DataAdaper对象来对单张表进行操作。 本文我们将介绍如何进行跨表操作。 我们通过具体例子方式进行演示,例子涉及到三张表。 1)student表(学生信息表),有 studentno和studentname两个字段,其中studentno是关键字
阅读全文
摘要:一、概述 前面2篇文章,介绍了使用SqlCommand对象利用sql命令来操作数据库。 这篇文章我们来介绍使用c#的DataSet 和 DataAdaper对象操作操作数据库。 先来介绍下这两个对象是干啥的。 1、DataSet对象 顾名思义,DataSet 可叫做数据集,可以简单的理解为一个临时数
阅读全文
摘要:前面一篇文章,我们介绍了如何在c#中对数据库进行更新操作。主要是利用SqlCommand 对象的ExecuteNonQuery方法。 这篇文章介绍,如何进行查询操作。本文给出的例子仍然是针对sql server数据库的。对于其它数据库(源),区别只是引入的部门api的不同,但流程和方法是一样的。 一
阅读全文
摘要:原来一直是java,python等语言,最近用c#语言,并编写数据库访问代码。使用了之后,这里总结下,分享下c#如何操作数据库。 在java等其它语言中,有一套标准的api来完成数据库访问,并且一般都是通过sql语句来访问的。而在c#中,提供了多种灵活的方式。 大致可以分为: 1)和其它语言一样,直
阅读全文
摘要:一、问题 随着AJax技术的普及,单页面web程序的应用越来越广泛。 所谓单页面应用程序,简单的说,就是应用只有一个主网页,第一次加载后,后续页面只会利用js和ajax到服务器获取数据进行页面的局部刷新。 因为实际一直只有一个页面,虽然看上去页面经常发生变化(比如点了一个链接或按钮),但无法利用浏览
阅读全文
摘要:所谓事件冒泡,指在一个对象(如buton)上触发某类事件(比如单击onclick事件): 1、如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序, 默认情况下,处理完毕后,事件就会继续向这个对象的父级对象传播,如果父对象定义了事件处理,则父对象的事件处理会被调用,一直会传播到对象层次的
阅读全文
摘要:Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台,包括Microsoft Wind
阅读全文
摘要:一、应用场景一:判断一个字符串是否符合特定的格式 案例1:判断一个字符串必须是7位整数 上面例子输出 valid。 注意:在js中, ^表示开头,如果上面的表达式 省去了 ^ ,则 如 ss1234567也是符合要求的 ,也就说只需后7位是数字即可。 而$表示结尾,如果没有 $ ,则只需前面7位是数
阅读全文
摘要:我们在开发WEB应用时,往往会需要对所有的url请求进行拦截,做些预处理,比如权限处理、日志等统一处理。 本文介绍一下Flask中的处理机制。我们通过一个简单的例子来说明。 1、编写一个简单应用 run.py,内容如下 上面代码中的关键是 @app.before_request 这个标识,flask
阅读全文
摘要:本文我们在上篇文章《Flask web开发 处理POST请求(登录案例)》的基础上,来讲述Flask对session的支持。 在上面案例上,我们需要修改和新增如下功能 1、登录成功后的 url不再是 http://192.168.142.138/home?username=admin 而是http:
阅读全文
摘要:本文我们以一个登录例子来说明Flask对 post请求的处理机制。 1、创建应用目录,如 mkdir example cd example 2、在应用目录下创建 run.py文件,内容如下 上面的代码解释如下: 1)上面的代码用到了几个flask的方法 render_template : 将请求定位
阅读全文
摘要:Flask是一个基于python的轻量级web框架。当安装好后Flask后 (pip install flask),就可以开始使用了。 一、最简单的例子 1、新建目录,作为web应用的目录,如: mkdir myapp 2、编写 hello.py文件,放在上面的myapp目录下 3、启动flask服
阅读全文
摘要:1、测试表和数据: 2、在本地创建一个目录,如D:/myoracledata 在sql plus中执行如下语句 create or replace directory MY_DIR as 'D:/myoracledata'; 3、在sql plus中执行如下脚本。下面代码是 100行换一个文件,文件
阅读全文
摘要:Linux中有很多特殊符号,这里介绍 ` 倒引号的含义。 我们考虑下这个场景,有时我们需要将一个命令的执行结果赋值给某个变量,或者别的用途。 这时我们可以用两个`倒引号将该命令括起来。 例1: 如 echo `uname -s` 输出:Linux echo `uname -m` 输出:x86_
阅读全文
摘要:Jekyll是一个简单的博客、静态网站生成工具。利用它可以快速的搭建一个网站。并且完全免费的在 GitHub 上发布网站 — 自定义域名。 一、环境搭建 apt-get install jekyll jekyll new mysite cd mysite jekyll serve 这样一个网站就搭建
阅读全文
摘要:创建一个docker容器,docker系统会自动为该容器分配一个ip地址,通常是172.17开头。 我们可以在主机上用 docker inspect 命令 或者进入容器用ifconfig命令来查看容器的ip地址。 假设某个容器(假设容器的名称为myweb)被分配的地址是 172.17.0.2,该容器
阅读全文
摘要:我们可能会碰到这样的一个问题,在容器执行过程中,修改了容器的内容(如配置文件信息),但因为修改出了问题。导致容器关闭后,无法启动。 这事需要重新修改配置文件。 正常情况下可以通过 docker exec命令打开容器的一个shell终端进去修改。 但这时容器已经无法启动了。这时该如何处理呢? 这有两种
阅读全文
摘要:使用 sudo 命令可以提高命令的执行权限,以root权限执行 如 : sudo vi xxx 但是有些内置命令 如 cd 无法通过 sudo来执行 ,如 sudo cd xxx 这是会报错的。 这时可以直接以 sudo su 命令切换到root账户下执行
阅读全文
摘要:一、临时环境变量 临时环境变量,只对当前打开的shell生效,shell关闭后,环境变量失效。 设置方法一: 分两步 MYPARA=hello export MYPARA 设置方法二:一步完成 export MYPARA=hello 说明:可以一次export多个变量,如export MYPARA1
阅读全文
摘要:1、如果docker主机不需要通过代理连接外网 则docker的相关命令(如docker search)或docker容器与网络相关的操作都可以正常进行,不需要特殊设置。 2、当docker主机 是通过代理才能连接外网时,采用服务方式启动守护进程 如果docker守护进程是通过服务的方式启动的(su
阅读全文
摘要:1、apt-get update 更新软件源本地缓存文件 2、apt-cache search 查找软件包,找到想要安装的包,如 sudo apt-cache search mysql-server 相关命令: apt-cache show package //获取包的相关信息,如说明、大小、版本等
阅读全文
摘要:安装好docker后,需要启动docker守护进程。有多种启动方式。 一、服务的方式 因为docker守护进程被安装成服务。所以,可以通过服务的方式启停docker守护进程,包括查看状态。 sudo start docker //启动 sudo stop docker //停止 sudo statu
阅读全文
摘要:在介绍VOLUME指令之前,我们来看下如下场景需求: 1)容器是基于镜像创建的,最后的容器文件系统包括镜像的只读层+可写层,容器中的进程操作的数据持久化都是保存在容器的可写层上。一旦容器删除后,这些数据就没了,除非我们人工备份下来(或者基于容器创建新的镜像)。能否可以让容器进程持久化的数据保存在主机
阅读全文
摘要:ONBUILD指令可以为镜像添加触发器。其参数是任意一个Dockerfile 指令。 当我们在一个Dockerfile文件中加上ONBUILD指令,该指令对利用该Dockerfile构建镜像(比如为A镜像)不会产生实质性影响。 但是当我们编写一个新的Dockerfile文件来基于A镜像构建一个镜像(
阅读全文
摘要:一、ADD指令 ADD指令的功能是将主机构建环境(上下文)目录中的文件和目录、以及一个URL标记的文件 拷贝到镜像中。 其格式是: ADD 源路径 目标路径 如: #test FROM ubuntu MAINTAINER hello ADD test1.txt test1.txt ADD test1
阅读全文
摘要:USER指令用于指定容器执行程序的用户身份,默认是 root用户。 在docker run 中可以通过 -u 选项来覆盖USER指令的设置。 举例:docker run -i -t -u mysql newmysqldb /bin/bash 显示的shell提示符是: mysql@57cd57edb
阅读全文
摘要:ENV指令用来在镜像构建过程中设置环境变量。我们来看一个Dockerfile的例子: #test FROM ubuntu MAINTAINER hello ENV MYDIR /mydir RUN mkdir $MYDIR RUN echo hello world > $MYDIR/test.txt
阅读全文
摘要:Dockerfile中的WORKDIR指令用于指定容器的一个目录, 容器启动时执行的命令会在该目录下执行。 相当于设置容器的工作目录了。我们来看一个dockerfile文件 #test FROM ubuntu MAINTAINER hello RUN mkdir /mydir RUN echo he
阅读全文
摘要:本文介绍Dockerfile的 ENTRYPOINT指令的含义。 先回顾下CMD指令的含义,CMD指令可以指定容器启动时要执行的命令,但它可以被docker run命令的参数覆盖掉。 ENTRYPOINT 指令和CMD类似,它也可用户指定容器启动时要执行的命令,但如果dockerfile中也有CMD
阅读全文
摘要:我们知道,通过docker run 创建并启动一个容器时,命令的最后可以指定容器启动后在容器内立即要执行的指令,如: docker run -i -t ubunu /bin/bash //表示容器启动时立即在容器内打开一个shell终端 docker run ubuntu /bin/ps //表示容
阅读全文
摘要:镜像创建好后,很重要的一个操作就是共享和发布。可以将自己创建的镜像发布到docker hub上,也可以发布到自己的私有docker hub上。 要想发布镜像到dokcer hub上,首先要在dokcer hub上注册账户,并且在本机(准备提交镜像到docker hub的机器上)上进行注册。具体过程如
阅读全文
摘要:本文介绍如何利用dockerfile来创建镜像。下面介绍具体的操作过程: 一、创建构建环境 操作示例如下: 上面命令在当前用户(xxx)的主目录下创建了一个myweb目录,并在该目录下建立了一个空的文件名为Dockerfile文件。这个目录就是我们的构建环境(或上下文)。 二、编写Dockerfil
阅读全文
摘要:一、概述 创建镜像有两种方法,一是用commit命令,二是用dockerfile方法(这个更常用,在下面文章介绍)。本章介绍commit方法。 在介绍commit命令前,我们先回顾下对代码的版本控制,当修改代码后,我们会commit变更到版本服务器上。 对于容器类似的概念,当创建容器后,如果后面对容
阅读全文
摘要:vi是linux下使用及其广泛的一个编辑器,虽然看上去很简单,但实际功能强大。 使用vi,核心就是熟悉它的一些命令。vi的命令非常多,但我们常用的实际就那几种。 下面将vi最核心的使用点介绍下。 一、运行 vi 文件名 如果指定的文件存在,则打开显示该文件,可以开始编辑了。如果文件不存在,
阅读全文
摘要:docker hub上有官方的mysql镜像,我们可以利用它来创建mysql容器,作为一个服务容器使用。 1、下载mysql镜像 docker pull mysql 2、创建镜像 docker run --name mysqldb -e MYSQL_ROOT_PASSWORD=root -d mys
阅读全文
摘要:一、查看本地镜像 只有下载后,镜像才会保存在本地(docker环境所在的主机),通过如下命令可以查看本地已经存在的镜像。 命令:dokcer images 上面命令列出本地所有已经存在的镜像,显示的信息如: REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE u
阅读全文
摘要:一、列出主机上已经创建的容器 docker ps -a 二、创建交互式容器 命令: docker run -i -t ubuntu /bin/bash 其中-i -t 表示创建一个提供交互式shell的容器。 ubuntu是镜像名,如果本地不存在,回到仓库中下载。 /bin/bash 是指定容器
阅读全文
摘要:本文的操作是在ubuntu操作系统下的。 一、环境检查 当登录一个安装了docker的机器后,首先我们要检查下docker环境如何。 1、命令:docker -v 上述命令返回安装的docker的版本信息,返回的信息可能如下: Docker version 1.9.1, build a34a1d5
阅读全文
摘要:1、缺省方式(箭头形状): cursor:default; 2、手型 cursor: pointer; //通用的cursor: hand; //为了兼容ie老版本,可以同时写上
阅读全文
摘要:一、检查 1、检查是否已经安装mysql whereis mysql 2、检查mysql服务是否已经启动 sudo netstat -tap | grep mysql 如果没有安装,下面就进行安装。 二、安装 sudo apt-get install mysql-server mysql-clien
阅读全文