【Node.js】mongoose教程03--Schema与Model

GitHub源码链接:sodino#MongoDemo


理解Schema

传统的MySQL、Oracle等关系型数据库中,在存储数据之前,开发者必须道德为数据定义数据表,并且为该数据表定义一些字段,从而使数据模型得到实现。
可以说,在关系型数据库中,一个数据表就是一个数据架构。它预先定义了开发者可以使用的数据模型。

阅读全文

【Node.js】mongoose教程02--开启、关闭数据库,监听数据库事件

请确定您已阅读mongoose教程–工程搭建

GitHub源码链接:sodino#MongoDemo

阅读全文

【Node.js】mongoose教程01--工程搭建

GitHub源码链接:sodino#MongoDemo


npm命令初始化工程目录

1
2
3
mkdir MongooseDemo  // 创建一个空目录用于工程初始化
cd MongooseDemo
npm init // 开始执行工程初始化

阅读全文

【Node.js】爬虫--抓取新闻标题、图片、文字描述,支持QQ、iFeng

先上效果图:

图片上部分为待解析的网页新闻链接,支持一次输入多个.
图片下部分为解析的进度日志打印。

qq.img.spider02

阅读全文

【JavaScript】 判断空对象区别于null、undefined

{}就是一个空对象,由于没有任何属性和方法,所以可以利用这一特点进行区别:

1
2
3
4
5
6
7
8
function isEmpty (object) {
for (var i in object) {
// 存在属性或方法,则不是空对象
reutrn false;
}

return true;
}

阅读全文

【JavaScript】对象结构的简化--删除Json中的空属性、空数组

从网上抓取的Json有大片的空属性,想直接干掉精减一下结构。

功能描述

功能如下:

  • 属性值为空字符串、null、undefined的属性

阅读全文

【JavaScript】正则表达式删除代码注释

【JavaScript】正则表达式删除代码注释

约定:本文中,以数字内容表示代码正文,其余字符内容表示注释内容。

阅读全文

【Node.js】使用iconv-lite解决中文乱码 (GB2312)

作为新手,碰到问题了就google了一下,网上已经有teary:window下nodejs爬取gb2312网页出现乱码的解决方案出来了。

阅读全文

【JavaScript】继承的真真假假

文章结构

继承的判断标准
真真假假的继承实现方式

  1. 构造函数绑定
  2. prototype的拷贝

阅读全文

【JavaScript】构造函数中定义prototype的异常现象及研究

文章结构

阅读全文

【JavaScript】'this'详解

文章结构

阅读全文

【node.js】'readline' 逐行读取、写入文件内容

运用readline逐行读取,在写入行数数据时用两种思路实现。

效果图如下:
左边1.log 为源文件
右边1.readline.log为复制后的文件
下边为命令行输出

readline.preview

阅读全文

【Android Studio】jacoco导致cannot find local variable

刚进项目在调试代码时一直出现”Cannot find local variable”,如下图:

cannot.find.local.variable

阅读全文

【Proguard】Proguard混淆时保留行号信息

混淆工程如果不保留行号,则查起Crash时,一一对照mapping文件是非常麻烦的,而且由于java的全名规范,只要方法的参数不一致,即可方法名相同,在这种情况下,更难准确定位出错的方法及具体的代码。
如下图,同一个类中被混淆后有三个名字为 a 的方法:
three.a.methods

阅读全文

【Android】'WebView-- Caught a crash, signum=11'的解决

碰到一个奇怪的问题:
WebView在显示本地的一个h5页面时,在Mi 2S可显示,页面上同样属性的按钮有两个可点击,但第三个按钮点击导致Activity必定出现崩溃。崩溃无详细日志,只有如下两句线索:

1
2
// W/crash_handler(19125): Caught a crash, signum=11
// 14594-14594/com.eln.base E/webcore: Report WebCore crash to the ErrorReportUtils at:Wed Oct 28 18:44:51 格林尼治标准时间+0800 2015 //blog from sodino.com

阅读全文

【Android】DecorView设置TouchDelegate无效原因

今天不想写额外的布局,想直接在DecorView添加一个小组件,且由于小组件本身可视区域不大,自然想到要使用TouchDelegate扩展其可点击区域,但发现一直无效。

查阅源码,发现DecorView虽然继承自FrameLayout,进而继承自ViewGroup最终继承自View,但其onTouchEvent()并未对mTouchDelegate做处理导致无法扩展可点击区域。

阅读全文

【Android】TouchDelegate实现任意区域点击组件

文章结构

阅读全文

【AS】Task '' not found in root project 'MyProject'.

工作环境问题记录

导入已有的Android工程出现“Task ‘’ not found in root project ‘MyProject’.”

详情如下:

Error:FAILURE: Build failed with an exception.

阅读全文

【JDK】Mac下Java 7及后续版本JDK安装路径变化

在JDK 1.6及以前,安装路径是“/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents”,该路径可以通过”which java”后查看快捷方式的真实路径找到。

但JDK 1.7及以后,安装路径是“/Library/Java/JavaVirtualMachines”,见下图:
jdk

阅读全文

【LBS】移动端LBS定位的原理、数据指标、失败分析、提升方案

对于定位,这里指以获取经纬度为最终目的,并可能伴随下发普遍的信息点包括省、市、区、街道名或更加详细的兴趣热点名(即设备所处位置周边的餐饮点、场馆点、医疗点等信息)。

移动设备的定位目前主流的实现有:GPS 和 各种定位SDK(如高德、腾讯)。

文章结构:
GPS原理
定位SDK原理
定位的关键指标数据
经纬度坐标系
SDK定位失败原因
定位凭据权限限制的判断方法
SDK定位失败原因分布
定位成功率提升思路

阅读全文

【Mac】使用Sublime Text查看Android源代码

文章结构

  • 前言
  • 使用Sublime Text查看Android源代码

    阅读全文

    【Android】图片内存占用大小的计算与验证

    一张图片的文件可能只有几KB、十几KB或几十KB,但在内存中解码后,所占用的内存空间是多大呢?

    本篇文章将提供图片内存占用大小的计算与验证方法。

    文章内容:

    阅读全文

    【JNI】Find 'jni.h' for MacOS

    1. download jdk8 and install.

    阅读全文

    【JNI】jni.h函数详解手册--The Java(TM) Native Interface

    一直觉得jni文档太少了,#include <jni.h>后,看着函数名大概能猜出函数意思来,但心里一直不放心,搜索来去也没有找到详细靠谱的文档。

    直到现在,发现了!

    “The Java(TM) Native Interface–Programmer’s Guide and Specification”一书中,在其JNI Functions章节中详细讲解了jni.h中的各函数含义及详情,总算解了一心结。

    阅读全文

    【C/C++】多进程:信号量的监听与处理函数

    文章结构:

    阅读全文