- 浏览: 119469 次
- 性别:
- 来自: 南京
文章分类
- 全部博客 (135)
- java (135)
- [转]c# 画圆角矩形 (1)
- 设计模式生活实例 (1)
- .nET2.0小技巧 (1)
- 从另一个角度看敏捷实践(一)--IPM:承诺的仪式 (1)
- javascript字符串转json对象 (1)
- 使用BeanUtils时,Date类型值为空的解决方法 (1)
- Lenovo V460+Ubuntu 11.10 无线网问题 (1)
- Lucene 索引和搜索过程核心类详解 (1)
- Android短信编解码方式 (1)
- 股神巴菲特十大致富秘籍 (1)
- Map遍历的三种方法 (1)
- Android中用Toast.cancel()方法优化toast内容的显示 (1)
- ViewFlipper “Receiver not registered” Error (1)
- javax.xml.transform.TransformerFactoryConfigurationError (1)
- JNI调用的注意事项 (1)
- JUnit单元测试感悟 (1)
- 用C#写定时关机的程序 (1)
- ASP.NET开发工具Web Matrix介绍 (1)
- MapXtreme2004代码 MapControl控件中显示地图文件 (1)
- 《使用 Microsoft .NET 的企业解决方案模式》读书笔记3 (1)
- 微创短信开发平台 (1)
- 谈谈Q+平台的技术实现 (1)
- 手机防盗软件实现(源码) (1)
- 虚析构函数(总结 帖子) (1)
- c语言中去除const修饰 (1)
- ORA-01012: not logged on 解决办法 (1)
- paypal提现如何省钱 (1)
- 数独suduku (1)
- MyISAM InnoDB 区别 (1)
- 随 笔 (1)
- Android上的log,日志相关 (1)
- 百度质量部实习居然通过了~ (1)
最新评论
-
野狐禅:
ext.get('imagebrowse') is null
ExtJs上传图片预览功能 -
zhuyl_wind:
不切实际,呵呵
[]5年内买车买房-理财篇 -
in南京:
关键你那两千块钱就够交一个多月的房租!换个城市你那六百也远远不 ...
[]5年内买车买房-理财篇 -
javac_xinyun:
呵呵,看完了,确实不错,貌似第一年的房租每月算进去 ,人际关系 ...
[]5年内买车买房-理财篇 -
dishikun:
貌似很不错,就是没把房租算进去!
[]5年内买车买房-理财篇
我也来学习nodejs 郁闷的天 文档很不咋的 实例根本跟不上 产品不成熟
完事开头难,聊天室还是有困难的啊 写起来 今天下午第一次接触这个玩意 ...
忽然发现 完全与之前的web开发 不挂钩 后端 还得自己去 处理各种请求 ....
实现聊天室 如果没有一个标准的话 后面东西很乱.... 写就写好 ...
先把框架雏形写出来再说 ... 靠 我也实现个mvc出来玩
下面这个雏形 基本源自 我自己的php框架思想 .... 基本有了 明天继续实现
今明2天把 框架实现好,后面可以自己叠加应用了 .......
可能哥以后 就有段时间折腾这破玩意了...
运行之后
http://localhost:8124/ 会输出 { controller: 'application', action: 'index' }
http://localhost:8124/hello/world/id/123/page/12 会输出
{ controller: 'hello',<br> action: 'world',<br> id: '123',<br> page: '12' }
似乎 还行啊 不知道性能怎么样....
下面把 网站贴下 方便 学习:
https://github.com/joyent/node/wiki/modules
http://cnodejs.org/blog/?p=104
http://www.cnblogs.com/qleelulu/archive/2011/01/28/nodejs_into_and_n2mvc.html 源代码下载
http://cnodejs.org/cman/ []
http://cnodejs.org/api/
http://seajs.com/
http://www.w3school.com.cn/js/jsref_substr.asp
完事开头难,聊天室还是有困难的啊 写起来 今天下午第一次接触这个玩意 ...
忽然发现 完全与之前的web开发 不挂钩 后端 还得自己去 处理各种请求 ....
实现聊天室 如果没有一个标准的话 后面东西很乱.... 写就写好 ...
先把框架雏形写出来再说 ... 靠 我也实现个mvc出来玩
下面这个雏形 基本源自 我自己的php框架思想 .... 基本有了 明天继续实现
今明2天把 框架实现好,后面可以自己叠加应用了 .......
可能哥以后 就有段时间折腾这破玩意了...
console.log('kenxu聊天室程序');// 实现 简易的mvc模式var http = require('http');var system = require("sys");var filesystem = require("fs");var url = require("url");// 工具代码var __undef = 'undefined',__proto = "prototype";object.extend = function(dest, source) { for (var property in source) dest[property] = source[property]; return dest;};object.extend(string[__proto],{ trim: function(){return this.replace(/^\s+|\s+$/g, '');}});var utilities = { arraymap: function(list, fn) { if (list && list.length){ var r = []; for (var i = 0; i < list.length; i++) { var x = fn(list[i], i); if (x !== null) { r.push(x) ; } } return r ; } return []; } , each: function(list,fn){ if (list && list.length) for (var i = 0; i < list.length; i++) if (fn.call(list[i],i) == '#end#') break ; }};/** * udi 对象 实现请求资源定位器 * @type */var udi = { udi_controller: 'controller', udi_action: 'action', default_controller: 'application', default_action: 'index' };function __request_filter(pathinfo){ var pathinfo = pathinfo || '/'; var parts = pathinfo.substr(1).split('/'); var params = {}; if (parts[0] && parts[0].trim().length > 0){ params[udi.udi_controller] = parts[0].trim(); } if (parts[1] && parts[1].trim().length > 0){ params[udi.udi_action] = parts[1].trim(); } for (var i = 2; i < parts.length; i += 2) { if (parts[i + 1]) { params[parts[i]] = parts[i + 1]; } } // 校验 udi参数是否存在 if (!params[udi.udi_controller]){ params[udi.udi_controller] = udi.default_controller; } if (!params[udi.udi_action]){ params[udi.udi_action] = udi.default_action; } return params;}var qrequest = function(req){ this._req = req; };/** * 单一入口分发器 * @type */var dispatcher = { /** * 请求分发方法,可能会抛出异常,不知道异常怎么写... * * @param {} request * @param {} response */ dispose: function(request, response){ // 取拼装控制器以及action var pathinfo = url.parse(request.url).pathname; var params = __request_filter(pathinfo); console.log(params); response.writehead(200, {'content-type': 'text/plain'}); response.end(pathinfo + '\n'); } };//sfw.controller = function(request)http.createserver(function (request, response) { try { dispatcher.dispose(request, response); } catch(e){ console.log(e); }}).listen(8124);
运行之后
http://localhost:8124/ 会输出 { controller: 'application', action: 'index' }
http://localhost:8124/hello/world/id/123/page/12 会输出
{ controller: 'hello',<br> action: 'world',<br> id: '123',<br> page: '12' }
似乎 还行啊 不知道性能怎么样....
下面把 网站贴下 方便 学习:
https://github.com/joyent/node/wiki/modules
http://cnodejs.org/blog/?p=104
http://www.cnblogs.com/qleelulu/archive/2011/01/28/nodejs_into_and_n2mvc.html 源代码下载
http://cnodejs.org/cman/ []
http://cnodejs.org/api/
http://seajs.com/
http://www.w3school.com.cn/js/jsref_substr.asp
发表评论
-
百度质量部实习居然通过了~
2012-02-08 12:23 992[size=small;]? ? ?本来打算在软工所苦 ... -
Android上的log,日志相关
2012-02-07 14:18 1533摘自:http://blog.csdn.net/met ... -
随 笔
2012-02-04 13:39 600金风玉露一相逢,便胜却人间无数。英文版: chemis ... -
MyISAM InnoDB 区别
2012-02-02 16:59 737<h1 id="artibody ... -
数独suduku
2012-01-31 14:38 916sudu sudu sudu sudu sudu su ... -
paypal提现如何省钱
2011-12-28 16:58 1224据PayPal中文注册得知,如今很多收样品费的外贸商户 ... -
ORA-01012: not logged on 解决办法
2011-12-28 13:08 3512<span style="font-f ... -
c语言中去除const修饰
2011-12-21 10:54 1435[size=16px;]<span style= ... -
虚析构函数(总结 帖子)
2011-12-21 09:54 706<span style="" ... -
手机防盗软件实现(源码)
2011-12-20 12:54 938<a href="http://blo ... -
谈谈Q+平台的技术实现
2011-12-20 09:49 963这篇文章是我个人 ... -
微创短信开发平台
2011-12-19 11:39 772在网上闲逛,发现了一个站点,微创短信开发平台(http ... -
《使用 Microsoft .NET 的企业解决方案模式》读书笔记3
2011-12-19 10:24 783第3章 Web表示模式 没有一个设计策略能够适合所有情 ... -
MapXtreme2004代码 MapControl控件中显示地图文件
2011-12-15 14:29 912::<?xml:namespace prefix ... -
ASP.NET开发工具Web Matrix介绍
2011-12-15 13:39 970<p class="MsoPlain ... -
用C#写定时关机的程序
2011-12-15 11:14 705</span></font>& ... -
JUnit单元测试感悟
2011-12-14 11:29 864<p class="MsoNorma ... -
JNI调用的注意事项
2011-12-14 09:34 755JNI的简单教程网上很多,看看就能够明白,照着操作也基 ... -
javax.xml.transform.TransformerFactoryConfigurationError
2011-12-13 13:34 854<span style="" ... -
ViewFlipper “Receiver not registered” Error
2011-12-12 10:59 1127偶尔出现这个错误: <span> < ...
相关推荐
标题中的“我也来学习nodejs 没有就自己来 色色实现迷你 MVC”表明这是一篇关于使用Node.js构建小型MVC(Model-View-Controller)框架的学习笔记或者教程。MVC是一种常见的软件设计模式,尤其在Web开发中广泛使用,...
QuorraJS 是一款较成熟的完整的NodeJS MVC 框架。安装npm install -g quorra-cli示例代码:Route.get('users', function(req, res) { res.send('Users!'); });Route.get('users', 'UserController@getIndex'...
nodejs 学习笔记 nodejs 学习笔记 nodejs 学习笔记
nodejs基础学习视频nodejs基础学习视频nodejs基础学习视频nodejs基础学习视频
是我学习nodejs的Xmind路线,从入门到其它的数据库都已齐全。如果对node的学习没有头绪等,可以下载学习。
论文+远程调试+毕业设计+重复率低+源码基于nodejs人事管理系统的设计与实现(论文+源码)_kaic.rar基于nodejs人事管理系统的设计与实现(论文+源码)_kaic.rar基于nodejs人事管理系统的设计与实现(论文+源码)_kaic.rar...
Nstorm vserion 0.5.82 仿照thinkphp目录结构的 nodejs MVC框架 让开发nodejs更加快速 标签:Nstorm
这个"NodeJS学习笔记和代码"的压缩包显然包含了帮助初学者掌握NodeJS基础知识和实践技能的所有必要资料。 首先,`NodeJS第1天笔记.docx`很可能是对NodeJS基础概念的介绍,包括但不限于以下几点: 1. **事件驱动...
一个用NodeJS实现的Ftp Servce
NodeJS 的 MVC 框架演示源码: : 文档: : WNodeJS 是什么? 这是 nodejs 的 MVC 框架它正在使用:ExpressJS、Socket.IO、Jade、Mongooese、... 它支持: 创建多应用管理器和渲染视图管理器和配置模型在控制器内创建...
基于nodejs+express+angularjs+mysql实现的自主学习与考试系统.zip 基于nodejs+express+angularjs+mysql实现的自主学习与考试系统.zip 基于nodejs+express+angularjs+mysql实现的自主学习与考试系统.zip 基于nodejs+...
这两天学习了nodejs mysql 实现分页,很重要,所以,今天添加一点小笔记。 代码如下 var express = require('express'); var router = express.Router(); var settings = require('../settings.js'); var mysql =...
nodejs实现websocket服务与html+js聊天通信示例 ...2.直接在nodeJs命令行中敲入:npm install nodejs-websocket回车就可以安装好了. 3.开始建立服务器了,因为有了nodejs-websocket模块,所以很多工作都不用我们自己做.
NodeJs实现水仙花数,模块化
基于Nodejs+TypeScript+Koa+MySQL实现的宿舍管理系统源码(前端+后端)+使用说明+sql数据库.zip基于Nodejs+TypeScript+Koa+MySQL实现的宿舍管理系统源码(前端+后端)+使用说明+sql数据库.zip基于Nodejs+TypeScript+Koa+...
nodejs的一个小代码,使用nodejs代码实现图片的上传
NodeJS MVC骨架 此存储库是使用M * EAN堆栈(* MySQL,ExpressJS,AngularJS,NodeJS)的Web应用程序的MVC框架。 快速开始 首先克隆存储库git clone https://github.com/bushev/nodejs-mvc-skeleton.git 。 进入...
详细的nodejs入门脑图。包含了node学习必须的基础知识。
NodeJS学习手册是一份专为中文用户设计的详尽教程,旨在帮助初学者和有经验的开发者深入理解和掌握NodeJS这一强大的服务器端JavaScript运行环境。NodeJS基于Chrome V8引擎,以其异步非阻塞I/O和事件驱动的特性,为...
小节点mvc 迷你mvc nodejs框架用法const { App } = require ( 'little-node-mvc' ) ;const app = new App ( ) ;const port = 8080 ;const hostAddress = '0.0.0.0' ;app . listen ( port , hostAddress , ( ) => { ...