摘要: 过了个五一,回来又开始搞这个系列。 看完之前的系列,咱们已经可以完成一个简单的不需要数据库的网站了。当然,不连数据库的网站挺少的,咱们接下来就讲一下node.js与mongodb的结合 在开始之前,假设咱们已经安装并掌握了mongodb的安装与简单使用以及简单的node.js操作mongodb。如果没有的话,请移步《mongodb权威指南》或Node.js与MongoDB实战教程 本篇博客不讲简单的node.js操作数据库的crud,咱们讲的是node.js与mongodb的结合。如果对这句话有疑问的话,试着做一个简单的登录网站就明白了。习惯了asp.net面向对象编程的我在最初接触js的函. 阅读全文
posted @ 2013-05-09 14:20 ζ老豆角 阅读(1721) 评论(0) 推荐(0) 编辑
摘要: 初学node.js与express+ejs,正在做一个登录注册页面,编译运行没问题,一访问某一页面就突然蹦这错误。 也没多大计算量啊,怎么就内存不够用了。 好一通折腾,发现是一个简单的问题,就是在ejs模板中,ejs标识符没有添加正确(不是完整的)。 改回来,ok 参考:http://stackoverflow.com/questions/13616770/node-js-fatal-error-js-allocation-failed-process-out-of-memory-possible 阅读全文
posted @ 2013-05-09 10:44 ζ老豆角 阅读(1761) 评论(0) 推荐(0) 编辑
摘要: 无意中看到,解释了眼花缭乱的版本号背后的意义,特Mark下。 举例: MongoDB的版本号。偶数为稳定版,奇数为开发版。例如 1.6.0,1.6.1是稳定版,1.7.0,1.7.2为开发版。 (1)开发者发布1.6.0。这是一个大版本更新,会有很多变化。建议线上系统尽快升级到这个版本。 (2)开发者着手开发1.8时,发布了1.7.0。这个新的开发分支和1.6.0非常类似,但会加入一些新特性,还可能引入一些Bug (3)开发者会继续添加新的功能,然后发布1.7.1,1.7.2等。 (4)bug修正和没什么风险的功能则合并到1.6的分支上。于是有了1.6.1,1.6.2等。对于这种调整是非常保. 阅读全文
posted @ 2013-05-06 16:23 ζ老豆角 阅读(593) 评论(0) 推荐(0) 编辑
摘要: 上一篇中,咱们说到使用Node.js express搭建简单的网站(“不就是Hello World!么”,只要你够蛋疼,返回整个html文件的字符串,什么网站你也能做),以及ejs模板的使用。 这一篇本来是想直接讲三层搭建的,后来一想,不如先讲讲Cookie和Session的使用,然后配合MVC做一个完整的例子,要不光看页面跳来跳去的也没意思。 1.Cookie 网站开发肯定会用到Cookie的对吧,可以将信息保存在客户端的好东西。那么在express中如何获取和设置呢? 直接上例子,跟着代码,看着注释走一遍就明白了Cookie的读写和设置 1 var express = require(&# 阅读全文
posted @ 2013-04-28 11:32 ζ老豆角 阅读(6058) 评论(1) 推荐(2) 编辑
摘要: 本系列写下去唯一的理由是给像博主一样头脑简单记不住Express使用方法的菜鸟们,但是会假定菜鸟们熟悉JavaScript,node.js基本使用方法,以及ASP.Net MVC。我会尝试在例子中加一些与ASP.Net MVC的对应知识点,但愿可以帮助理解而不是帮倒忙 自学能力强的菜鸟可以移步https://github.com/visionmedia/express,下载源码自学。例子就在根目录下的Examples中。编译之前记得在根目录中输入 npm install以初始化运行环境。 对于例子中使用到的Express方法,请移步http://expressjs.com/api.html,. 阅读全文
posted @ 2013-04-23 11:42 ζ老豆角 阅读(3755) 评论(0) 推荐(0) 编辑
摘要: JavaScript各种类型的隐式转换,一直没理出个头绪来,每次碰到都是得过且过,没有深究。今天读《JavaScript权威指南》,借其中章节一用,只为搞个明白。一、布尔类型转换 布尔值很容易转换,从其他类型转换为布尔值也比较容易,往往是自动转换 布尔值可以转换成数值1或0,也可以转换成字符串“true”或“false” 数值的话,若是0或NaN,则为false,否则为true 字符串的话,空字符串为false,否则为true 空值或未定义的值也会转换为false,而任何的非空对象、数组或函数都转换为true二、null的转换 在字符串环境下,转换为“null” 在布尔环境下,转化为fals. 阅读全文
posted @ 2013-02-19 19:53 ζ老豆角 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 一. 预备知识 单元测试:单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证 Mock测试:在测试过程中,对于某些不容易构造或者 不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法 Lambda表达式 Linq(Language INtegrated Query)二. 初识Moq Moq(读作“Mock-you”或“Mock”)是.net平台下最有生产力,类型安全和重构友好的mocking库。 在进行单元测试的时候,经常会碰到这些情景: 1.想要对业务逻辑层的某个AService方法进行单元测试,而该方法内部却调用了数据链路层的ADataAccess方法, 阅读全文
posted @ 2013-02-17 10:19 ζ老豆角 阅读(528) 评论(0) 推荐(0) 编辑
摘要: 最近一直在读公司之前写的网站代码,很为其中的路由机制头疼,如何实现控制层的抽离?如何实现全局路由和区域的配合? MVC中的控制器是MVC的中转站,请求通过控制器,或者通过访问Service层拿到数据,或者传给View层展示页面。而路由机制,则保证了请求如何找到相对应的控制器。 1.首先说下如何实现MVC中控制器的抽离。 第一步:创建MVC3空程序,RouteTest 第二步:创建类库,RouteTest.Controllers 第三步:在Controllers类库中,添加Home文件夹,在该文件夹下创建HomeController.cs文件,添加System.Web.Mvc引用 代码如下:u. 阅读全文
posted @ 2013-01-10 17:20 ζ老豆角 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 初学SQL表连接的时候,什么笛卡尔积,左连接,右连接看的头都大了 后来看了《SQL Server技术内幕2008:T-SQL查询》之后,豁然开朗。今天写数据库又用到了表连接,印象有点模糊了,赶紧找地方写下来先。 所谓的笛卡尔积其实就是多行数据交叉连接。 例如A 1 与 M 3 A 1 N 4B 2 N 4 进行笛卡尔积得 A 1 M 3 B 2 N 4 B 2 M 3 其实表连接总共就4种连接,分别是交叉连接,内连接,外连接和多表连接 1.交叉连接 关键字(cross join) 交叉连接就是两表进行笛卡尔积获得的结果集 2.内连接 关键字(inner join) 内连接就是两表进行笛卡尔积. 阅读全文
posted @ 2012-10-25 23:53 ζ老豆角 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 假设persons是实现了IEnumerable接口的可枚举集合类PersonCollection的一个对象1 foreach(Person p in persons)2 {3 Console.WriteLine(p);4 }那么翻译一下这个foreach语句,就相当于1 IEnumerator enums=persons.GetEnumerator();2 while(enums.MoveNext())3 {4 Console.WriteLine((Person)enums.Current);5 } 阅读全文
posted @ 2012-10-24 11:04 ζ老豆角 阅读(203) 评论(0) 推荐(0) 编辑