自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Android之Activity系列总结(三)--Activity的四种启动模式

一、返回栈简介任务是指在执行特定作业时与用户交互的一系列 Activity。 这些 Activity 按照各自的打开顺序排列在堆栈(即返回栈,也叫任务栈)中。首先介绍一下任务栈:(1)程序打开时就创建了一个任务栈, 用于存储当前程序的activity,所有的activity属于一个任务栈。 (2)一个任务栈包含了一个activity的集合, 去有序的选择哪一个activity和用户

2017-02-07 22:53:32 346

原创 C++宏定义#define

可以用#define命令将一个指定的标识符(即宏名)来代表一个字符串。定义宏的作用一般是用一个短的名字代表一个长的字符串。它的一般形式为:#define 标识符 字符串这就是已经介绍过的定义符号常量。如:#define PI 3.1415926还可以用#define命令定义带参数的宏定义。其定义的一般形式为:#define 宏名(参数表) 字符串如:#define S(

2017-02-07 18:58:32 453

原创 C++内置函数(内嵌函数,内联函数)

调用函数时需要一定的时间和空间的开销。C++提供一种提高效率的方法,即在编译时将所调用函数的代码直接嵌入到主调函数中,而不是将流程转出去。这种嵌入到主调函数中的函数称为内置函数(inline function),又称内嵌函数。在有些书中把它译成内联函数。指定内置函数的方法很简单,只需在函数首行的左端加一个关键字inline即可。【例4.4】函数指定为内置函数。复制纯

2017-02-07 14:58:40 852

原创 ASP.NET Web Pages – 文件夹

本章介绍文件夹和文件夹路径。在本章中,您将学到:逻辑和物理文件夹结构 虚拟和物理名称 web URL 和路径 逻辑文件夹结构下面是 ASP.NET 网页的典型文件夹结构:“Account” 文件夹包含登录和安全文件 “App_Data” 文件包含数据库和数据文件 “Images” 文件夹包含图片 “Scripts” 文件夹包含浏览器脚本 “Shared”

2017-02-07 10:28:43 319

原创 Spring框架(二)

什么是框架 维基百科:软件框架,通常指的是为了实现某个业界标准或完成特点基本任务的软件组件规范,也制为了实现某个软件组件规范时,提供规范所要求之基础功能的软件产品。 通俗说:框架就是制定一套规范或者规则(思想),大家(程序猿)在该规范或者规则(思想)下工作。或者说就是使用别人搭好的舞台,你来做表演。 框架的特点  - 半成品  - 封装了特定的处理流程和控制逻辑  -

2017-02-06 17:48:27 277

原创 jQuery使用方法

使用jQuery的第一步,往往就是将一个选择表达式,放进构造函数jQuery()(简写为$),然后得到被选中的元素。选择表达式可以是CSS选择器:  1 $(document)//选择整个文档对象2 $('#myId')//选择ID为myId的网页元素 3 $('div.myClass')//选择class为myClass的div元素 4 $('input[name=f

2017-02-06 14:08:38 536

原创 5种IE hasLayoutt的属性及其值

hasLayout 是Windows  Internet  Explore 渲染引擎的一个内部组成部分。在 Internet Explore 中,一个元素要么自己对自身内容进行计算大小和组织,要么依赖于父元素来计算尺寸和组织内容。为了调节这两个不同的概念,渲染引擎采用了hasLayout 的属性,属性值可以为true或者false。当一个元素的属性值为true时,我们就说这个元素有一个布局(Lay

2017-02-06 10:23:30 301

原创 js的作用域

首先明确一下:词法作用域是在写代码或者说定义时确定的,而动态作用域是在运行时确定的!其实 JavaScript 并不具有动态作用域,它只有词法作用域,但 this 机制某种程度上很像动态作用域。 1 function foo() { 2 // 输出 2 3 console.log( a ); 4 } 5 6 function bar() { 7 v

2017-02-05 21:18:26 225

原创 flask扩展模块flask-sqlachemy 的使用---mysql数据库

该篇博客配置环境为:python版本3.5,flask2.0,python3中已经不再支持MySQLdb模块,所有这里我用了pymysql,所有使用前应该安装pymysql:pip install pymysql在网上的好多资料都给的是使用sqlite的例子,由于很不喜欢所以今天分享一下flask-sqlalchemy操作mysql的方法.以前习惯使用sqlalchemy,后来发现使用

2017-02-05 13:33:48 368

原创 MyBatis 源码分析——配置信息

MyBatis框架的启动前期需要加载相关的XML配置信息。从官网上我们可以了解到他具有十几个节点。其中笔者认为比较重要的节点是settings节点、properties节点、environments节点、 transactionManager节点。至于相关的作用到官网看过一篇都会明白。MyBatis框架的XML配置到底有几个节点,这个必须去查看一下相关的DTD文件才行。DTA文件就在包名为or

2017-02-04 20:58:23 216

原创 Docker 基础 - Dockerfile

Dockerfile 是一个文本格式的配置文件,用户可以使用 Dockerfile 快速创建自定义的镜像。我们会先介绍 Dockerfile 的基本结构及其支持的众多指令,并具体讲解通过执行指令来编写定制镜像的 Dockerfile。基本结构Dockerfile 由一行行命令语句组成,并且支持已 # 开头的注释行。一般而言,Dockerfile 的内容分为四个部分:基础镜像信息、维护者信息

2017-02-04 17:08:23 215

原创 实现jul 日志重定向到 slf4j

需求背景    jul 指的是java.util.logging,是 java 内置的日志模块,目前流行的Java日志组件还包括 jcl(common-logging)、slf4j/log4j/logback 等等 不同日志框架的定位和特性都存在差异,如 jcl、slf4j 提供的是日志门面(api)定义,log4j、logback则侧重于实现。通常一个团队会采用统一的日志组件,slf

2017-02-04 09:29:02 677

原创 Qt入门之基础篇 ( 二 ) :Qt项目建立、编译、运行和发布过程解析

转载请注明出处:CN_Simo。题解:    本篇内容主讲Qt应用从创建到发布的整个过程,旨在帮助读者能够快速走进Qt的世界。  本来计划是讲解Qt源码静态编译,如此的话读者可能并不能清楚地知道为何要静态编译,所以借此篇内容说明一下原由并为之后文章的学习做准备。  即使本片内容只是在围绕一个小小的HelloWorld程序开展,但还是希望朋友们不要急于求成,“欲速则不达”。

2017-02-03 19:43:41 481

原创 .Net学习难点讨论系列17

关于C#多线程的文章,大部分都在讨论线程的起停或者是多线程同步问题。多线程同步就是在不同线程中访问同一个变量(一般是线程工作函数外部的变量),众所周知在不使用线程同步的机制下,由于竟态的存在会使某些线程产生脏读或者是覆盖其它线程已写入的值(各种混乱)。而另外一种情况就是我们想让线程所访问的变量属于线程自身所有,这就是所谓的线程本地变量。下文我们将逐渐扩展一个最简单的示例代码,来展示上面所说的变

2017-02-03 11:18:22 294 1

原创 SqlServer建立存储过程,方便.NET插入自增字段

首先,需要在数据库中创建一个表,以在test数据库创建tableNo表为例:create table tablesNo( tableName varchar(30) not null, --表名 num int not null --行数)然后在数据库中 --> 可编程性 --> 存储过程 --> 新建存储过程 ,也可以在sql中执行代码如下:

2017-02-02 17:38:25 415 2

原创 Abp之工作单元与事务

环境:Abp1.2疑问:没有调用工作单元的SaveChanges方法引起的事务提交时机的问题.例如:有一个应用服务代码如下: public void CreatePhrase(PhraseCreateDto input) {var phrase = Mapper.Map(input); phrase.Id = Guid.NewGu

2017-02-01 23:48:31 722 2

原创 [Node.js]Buffer

摘要在js中是没有二进制类型的,但在处理tcp或者文件流时,必须使用到二进制数据,因此Node.js定义了一个Buffer类型,该类型用来创建一个专门存储二进制数据的缓存区。在Node.js中,Buffer类是随Node内核一起发布的核心库。Buffer库为Node.js带来了一种存储原始数据的办法,可以让Node.js处理二进制数据,每当需要在Node.js中处理I/O操作中移动的数据时,就

2017-02-01 15:38:26 246

原创 css3 2d转换3d转换以及动画的知识点汇总

css3 2d转换2d转换的方法:1、移动 translate(x, y) 可以改变元素的位置,x、y可为负值;2、缩放 scale(x, y) 可以对元素进行水平和垂直方向的缩放,x、y的取值可为小数,不可为负值;4、旋转 rotate(deg) 可以对元素进行旋转,正值为顺时针,负值为逆时针;5、倾斜 skew(deg, deg) 可以使元素按一定的角度进行倾斜2d转换

2017-01-31 22:18:16 491 2

原创 【初码干货】关于.NET玩爬虫这些事

这几天在微信群里又聊到.NET可以救中国但是案例太少不深的问题,我说.NET玩爬虫简直就是宇宙第一,于是大神朱永光说,你为何不来写一篇总结一下?那么今天就全面的来总结一下,在.NET生态下,如何玩爬虫关于爬虫从搜索引擎开始,爬虫应该就出现了,爬的对象当然也就是网页URL,在很长一段时间内,爬虫所做的事情就是分析URL、下载WebServer返回的HTML、分析HTML内容、构建

2017-01-31 14:08:15 472

原创 Go并发编程实践

前言并发编程一直是Golang区别与其他语言的很大优势,也是实际工作场景中经常遇到的。近日笔者在组内分享了我们常见的并发场景,及代码示例,以期望大家能在遇到相同场景下,能快速的想到解决方案,或者是拿这些方案与自己实现的比较,取长补短。现整理出来与大家共享。简单并发场景很多时候,我们只想并发的做一件事情,比如测试某个接口的是否支持并发。那么我们就可以这么做:func RunScena

2017-01-30 21:23:11 234

原创 你不能不知道到的Hook!

Hook是什么?    hook翻译之后是钩子的意思,hook的用途主要是用来拦截消息的,看到这里大家可能会迷茫,What is a hook?所以这时就不得不普及一下操作系统的原理。    举个例子:假如你是一名游戏热衷者,在玩游戏时,你要释放技能那么你就会对键盘鼠标进行操作,表面上你是直接操作游戏,其实中间经过了几个环节。                  首先,你操作键盘鼠标,那

2017-01-30 13:13:10 233

原创 Ioc容器依赖注入-Spring 源码(2)

Ioc容器依赖注入-Spring 源码(2)目录:Ioc容器beanDefinition-Spring 源码(1)Ioc容器依赖注入-Spring 源码(2)Ioc容器BeanPostProcessor-Spring 源码(3) 上篇中组装出了一个beanName:beanDefinition的ConcurrentHashMap,接下来就是把这些bean像织网一样联系起

2017-01-29 19:48:11 223

原创 基於tiny4412的Linux內核移植 --- 实例学习中断背后的知识(1)

作者:彭东林邮箱:pengdonglin137@163.comQQ:405728433平台tiny4412 ADKLinux-4.9 概述前面几篇博文列举了在有设备树的时候,gpio中断的用法示例。下面我们尝试分析一下Linux内核是如何做到的,如果哪写的有问题,欢迎大家批评指正,谢谢。还是以GPIO中断为例分析,对于tiny4412,gpio中断可以分为两种,

2017-01-29 11:48:16 881

原创 I-O模型浅析

引入首先来说一下进程:  进程在就是一段执行中的代码,他是由一条条指令和数据组成的一个具有生命周期的有头有尾的实体。进程根据权限大体上可以分为两类:用户进程 和 内核进程。  这两者的主要区别在于权限不同。用户进程无法直接访问I/O设备,如果用户进程想要访问I/O设备,需要调用内核提供的接口,由内核进程对I/O设备进行操作,读取其中的数据到内核空间,然后将数据从内核空间移动到用户空

2017-01-28 18:13:05 223

原创 【译】延迟加载JavaScript_0

【译】延迟加载JavaScript看到一个微信面试题引发的血案 --[译] 什么阻塞了 DOM?中提到的一篇文章,于是决定看下其博客内容,同时翻译下来留作笔记,因英文有限,如有不足之处,欢迎指出。同时,请给它五分钟。原文地址:https://varvy.com/pagespeed/defer-loading-javascript.html作者:Patrick Sexton如何延迟加

2017-01-27 15:08:07 174

原创 让EFCore更疯狂些的扩展类库(二):查询缓存、分部sql、表名替换、遍历的策略配置

前言上一篇介绍了扩展类库的功能简介,通过json文件配置sql语句 和 sql语句的直接执行,这篇开始说明sql配置的策略模块:策略管理器与各种策略的配置。  类库源码:github:https://github.com/skigs/EFCoreExtend  引用类库:nuget:https://www.nuget.org/packages/EFCoreExtend/     P

2017-01-26 11:43:00 396

原创 从php到浏览器的缓存机制,不得不看!

所有的php程序员都知道在php脚本里面执行 echo “1”;访客的浏览器里面就会显示“1”。但是我们执行下面的代码的时候,并不是显示“1”之后5秒再显示“2”,而是等待5秒后直接显示“12”echo '1';sleep(5);echo '2';这就涉及到几个缓存机制,为了更高的薪水,同学们非常有必要把这个缓存机制学习好。通常情况下,我们的web应用由以下几个

2017-01-25 12:33:04 192

原创 PHP的一些天坑_0

什么叫天坑。天呐,原来这么坑,不知则已,细思极恐。一、小数(符点数)不能直接比较是否相等比如 if( 0.5+0.2==0.7 ) 的结果是 false。究其原因是因为,PHP是基于C语言的,而C语言由于其二进制符点数的表示方式,导致不能精确表示大多数符点数。实际上,几乎所有的编程语言都没能精确表示小数(符点数),这是一个普遍存在的现象,因为这个是IEEE 754 的缺陷。想要解决此问

2017-01-24 17:37:57 228

原创 .Net多线程编程—使用Visual Studio 2012进行调试

1 相关概念1)栈帧C语言中,每个栈帧对应着一个未运行完的函数。栈帧中保存了该函数的返回地址和局部变量。栈帧也叫过程活动记录,是编译器用来实现过程/函数调用的一种数据结构。2)单步执行与单步函数执行单步执行又被称为逐语句执行,单步函数执行又被称为逐过程执行。单步函数执行不会进入函数体。3)主线程不会显示在Parallel Tasks 窗口中,因为主线程不是任务。但它会显示在

2017-01-24 09:17:56 273

原创 ASP.NET Core MVC-WebAPi如何构建路由?

前言本节我们来讲讲ASP.NET Core中的路由,在讲路由之前我们首先回顾下之前所讲在ASP.NET Core中的模型绑定这其中有一个问题是我在项目当中遇见的,我们下面首先来看看这个问题。回顾ASP.NET Core模型绑定我们有这样一个场景:修改个人资料中的各个属性,此时每个属性的值的类型肯定是不一样的,所以我们将值定义为object,如下model。 public

2017-01-23 14:07:54 258

原创 es6笔记5^_^set、map、iterator

一、set1.基本用法  数据结构Set类似于数组,但是成员的值都是唯一的,没有重复的值。 let s = new Set(); [2,3,5,4,5,2,2].map(x => s.add(x)) for (let i of s) {console.log(i)}// 2 3 5 4//Set函数可以接受一个数组作为参数,用来初始化。

2017-01-22 19:08:56 170

原创 Golomb及指数哥伦布编码原理介绍及实现

2017年的第一篇博文。本文主要有以下三部分内容:介绍了Golomb编码,及其两个变种:Golomb-Rice和Exp-Golomb的基本原理 C++实现了一个简单的BitStream库,能够方便在bit流和byte数字之间进行转换 C++实现了Golomb-Rice和Exp-Golomb的编码,并进行了测试。 在文章的最后提供了本文中的源代码下载。Golomb编码的基本原理

2017-01-22 12:41:03 542

原创 JVM内存模型

网上对于JVM内存模型讲解的博客很多也很详细,这里就不再进行详细介绍了,只当做学习的一个总结或者记录。这里先看一张整体的示意图: 这里主要分为五大块,分别是:本地方法栈、方法区、java堆、程序计数器和java栈。其中重点是方法区、java堆和java栈。下面就把各个区域的性质总结一下:(说明,下面的只是结论,没有详细的对各个内存块进行详细深入的介绍,有兴趣的可以看一下《深入理解j

2017-01-21 20:40:52 202

原创 第七章 Shell文本处理三剑客之sed

sed流编辑器,过滤和替换文本。工作原理:sed命令将当前处理的行读入模式空间进行处理,处理完把结果输出,并清空模式空间。然后再将下一行读入模式空间进行处理输出,以此类推,直到最后一行。还有一个空间叫保持空间,又称暂存空间,可以暂时存放一些处理的数据,但不能直接输出,只能放到模式空间输出。这两个空间其实就是在内存中初始化的一个内存区域,存放正在处理的数据和临时存放的数据。Usage

2017-01-20 23:57:53 251

原创 备份部分mysql表并上传至指定ftp服务器目录中

防伪码:忘情公子著前几天领导安排了一个任务,让写一个脚本备份某mysql数据库中的部分表,并要将备份好的文件上传至某ftp服务器中,于是就有了以下的脚本#!/bin/bash#Filename:#Function:backup a part of tables from mysql databases then package it and put it to ft

2017-01-20 18:12:49 384

原创 Zabbix数据结构及并行计算实现

本文原创作者鲍光亚,京东商城基础平台部软件开发工程师,经作者同意发表于本人博客,如需转载需经本人同意。一、 前言我部门对数据库的监控使用的是开源的Zabbix系统,目前监控了上万台主机。本文旨在通过分析Zabbix系统server端的数据结构和并行计算的实现方法,尝试探寻Zabbix系统server端的潜在扩展能力,同时希望有助于在实际应用过程中进一步优化运行效率和稳定性。Zabbix

2017-01-20 11:57:48 812

原创 Percona-XtraDB-Cluster+haproxy+keepalived 编译安装

系统:centos7mysql 端口3306 Percona-XtraDB-Cluster 主节点mysql端口3307 Percona-XtraDB-Cluster+haproxy+keepalivedMySQL端口3307 Percona-XtraDB-Cluster+haproxy+keepalived/21 vip ip软件版本:Percona-XtraDB-Clust

2017-01-19 18:52:51 737

原创 Django 1.10中文文档—第一个Django应用Part1

在本教程中,我们将引导您完成一个投票应用程序的创建,它包含下面两部分:一个可以进行投票和查看结果的公开站点;一个可以进行增删改查的后台admin管理界面;我们假设你已经安装了Django。您可以通过运行以下命令来查看Django版本以及验证是否安装:python -m django --version如果安装了Django,您应该将看到安装的版本。如果没有安

2017-01-19 13:27:48 339

原创 彻底征服 Spring AOP 之 理论篇

基本知识其实, 接触了这么久的 AOP, 我感觉, AOP 给人难以理解的一个关键点是它的概念比较多, 而且坑爹的是, 这些概念经过了中文翻译后, 变得面目全非, 相同的一个术语, 在不同的翻译下, 含义总有着各种莫名其妙的差别. 鉴于此, 我在本章的开头, 着重为为大家介绍一个 Spring AOP 的各项术语的基本含义. 为了术语传达的准确性, 我在接下来的叙述中, 能使用英文术语的地方,

2017-01-16 23:42:40 257

原创 一点做用户画像的人生经验(一):ID强打通

1. 背景在构建精准用户画像时,面临着这样一个问题:日志采集不能成功地收集用户的所有ID,且每条业务线有各自定义的UID用来标识用户,从而造成了用户ID的零碎化。因此,为了做用户标签的整合,用户ID之间的强打通(亦称为ID-Mapping)成了迫切的需求。大概三年前,在知乎上有这样一个与之相类似的问题:如何用MR实现并查集以对海量数据pair做聚合;目前为止还无人解答。本文将提供一个可能的解决

2017-01-16 18:08:07 4569

空空如也

空空如也

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

TA关注的人

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