ProjectOne(01) - 先来搭框架吧
2016-02-18 21:34
162 查看
原名:随便写点什么(01)。正式改名字吧。
2016.02.18
昨天找回博客之后,想想,还是随手写点什么代码吧。
暂时还没想好写个什么样的项目,也没一个明确的目标。
那么回头再确定名字吧。
那么,首先就是搭框架呗。
bower不会用,回头学,这个要mark起来。
首先,操作系统环境。
windows 7 x64
服务器层面就用Node.js吧。
nodejs - @4.3.0 LTS
数据库就先用MySQL吧。
mysql - @5.5.25
ok。就先这么安装好了。
然后下载安装什么的先略过吧。反正就是下一步下一步下一步就行了。
下面,就在E盘新建一个文件夹,就叫ProjectOne吧,因为没想好叫什么项目名称吧。
然后win+r,打开命令行,输入:
进入到目录底下。
然后继续安装express:
这个4.13.4应该是express5之前的最后一个版本了。为啥不直接装5?因为不会用啊!好吧。以后会学的。
还需要什么包么?哦,对了,数据库,那就找个数据库的操作包呗。
为什么这个版本?我也不知道,随便加的。
预计后期会加入[cluster、redis]等其他乱七八糟的包,暂时先不管。
好啦。下面就可以愉悦的开始码字啦。
打开IDE... 我用的是WebStome 7。
首先,当然是在根目录下面建一个app.js啦。
然后,只需要3行代码,我们的node服务器就建好啦。
服务器是运行了。但是是个然并卵的玩意。
ok,继续朝着目标前进吧。
今天文章的目标就是,
搭起一个简单的框架,通过路由功能来划分网络请求,实现不同的api,
而且只需简单的改动即可支持多人合作开发。
还有简单的页面显示。对了,还有要api支持数据库查询。
下面,先写一个页面设置吧。
因为某些原因,我并没有学过怎么写jade或者ejs。所以页面基本都是纯静态页面+JS控制。
(好吧,以后如果有需要,会去学的。
express里面有一个简单的设置,导入path包,就可以让我们将所有静态页面的请求,指向一个文件夹:
然后,为了也同时实现路由,我们新建两个文件夹,
一个叫web,保存网页。一个叫routers,叫路由器s。都是建在根目录下面。
路由放一放,我们直接在web下面新建一个index.html,
里面也不用写什么,就写
然后重启nodejs,试一下,项目能否正常运行。
ok,是正常运行的。
那我们继续往下写。下面就是要实现api路由功能的,这个功能主要是为了区分api和支持多人协作开发。
不同的api的js文件,可以由不同的人维护。或者根据不同的功能模块区分api的js文件。
在根目录下新建一个叫api的文件夹,然后下面建立一个叫users的文件夹。这个就是用户相关的api文件存放地点。
我们在users文件夹建立2个文件。一个叫api.js,作用是提供跟用户相关的api保存。另外一个叫router.js,用于判断调用的接口是否给users用户管理模块使用的。
由于api.js文件我懒得写了,先把逻辑代码写在router.js里面吧。
在routers文件夹下面建一个routers.js文件,作为一个总路由器。
在下面建一个函数,并把这个函数exports出去。
app.js稍作修改。
好吧。今天就写到这里吧。
明天看一下git怎么用。将代码提交到git再说。(我是不会说我一直只用svn,没玩过git的!
补一张图,是文件结构图。
2016.02.18
昨天找回博客之后,想想,还是随手写点什么代码吧。
暂时还没想好写个什么样的项目,也没一个明确的目标。
那么回头再确定名字吧。
那么,首先就是搭框架呗。
bower不会用,回头学,这个要mark起来。
首先,操作系统环境。
windows 7 x64
服务器层面就用Node.js吧。
nodejs - @4.3.0 LTS
数据库就先用MySQL吧。
mysql - @5.5.25
ok。就先这么安装好了。
然后下载安装什么的先略过吧。反正就是下一步下一步下一步就行了。
下面,就在E盘新建一个文件夹,就叫ProjectOne吧,因为没想好叫什么项目名称吧。
然后win+r,打开命令行,输入:
e: cd ProjectOne
进入到目录底下。
然后继续安装express:
npm i express@4.13.4
这个4.13.4应该是express5之前的最后一个版本了。为啥不直接装5?因为不会用啊!好吧。以后会学的。
还需要什么包么?哦,对了,数据库,那就找个数据库的操作包呗。
npm i mysql@2.10.2
为什么这个版本?我也不知道,随便加的。
预计后期会加入[cluster、redis]等其他乱七八糟的包,暂时先不管。
好啦。下面就可以愉悦的开始码字啦。
打开IDE... 我用的是WebStome 7。
首先,当然是在根目录下面建一个app.js啦。
然后,只需要3行代码,我们的node服务器就建好啦。
var express = require('express'); var app = express(); app.listen('80');其中,80就是监听80端口啦。但是,这个时候,什么都没有。
服务器是运行了。但是是个然并卵的玩意。
ok,继续朝着目标前进吧。
今天文章的目标就是,
搭起一个简单的框架,通过路由功能来划分网络请求,实现不同的api,
而且只需简单的改动即可支持多人合作开发。
还有简单的页面显示。对了,还有要api支持数据库查询。
下面,先写一个页面设置吧。
因为某些原因,我并没有学过怎么写jade或者ejs。所以页面基本都是纯静态页面+JS控制。
(好吧,以后如果有需要,会去学的。
express里面有一个简单的设置,导入path包,就可以让我们将所有静态页面的请求,指向一个文件夹:
var path = require('path'); app.use(express['static'](path.join(__dirname,'web')));
然后,为了也同时实现路由,我们新建两个文件夹,
一个叫web,保存网页。一个叫routers,叫路由器s。都是建在根目录下面。
路由放一放,我们直接在web下面新建一个index.html,
里面也不用写什么,就写
<h1>Hello ProecjtOne !</h1>
然后重启nodejs,试一下,项目能否正常运行。
ok,是正常运行的。
那我们继续往下写。下面就是要实现api路由功能的,这个功能主要是为了区分api和支持多人协作开发。
不同的api的js文件,可以由不同的人维护。或者根据不同的功能模块区分api的js文件。
在根目录下新建一个叫api的文件夹,然后下面建立一个叫users的文件夹。这个就是用户相关的api文件存放地点。
我们在users文件夹建立2个文件。一个叫api.js,作用是提供跟用户相关的api保存。另外一个叫router.js,用于判断调用的接口是否给users用户管理模块使用的。
由于api.js文件我懒得写了,先把逻辑代码写在router.js里面吧。
module.exports = function(app){ app.get('/api/users/:action',function(req,res){ res.send(' in router / users / action = '+ req.params.action); }); };
在routers文件夹下面建一个routers.js文件,作为一个总路由器。
在下面建一个函数,并把这个函数exports出去。
var usersRoute; usersRoute = require('../api/users/router.js'); module.exports = function(app){ return usersRoute(app); };
app.js稍作修改。
var path = require('path'); var express = require('express'); var app = express(); var routers = require('./routers/routers.js'); app.use(express['static'](path.join(__dirname,'web'))); routers(app); app.listen('80',function(){ console.log('server run at :'+ new Date()); });
好吧。今天就写到这里吧。
明天看一下git怎么用。将代码提交到git再说。(我是不会说我一直只用svn,没玩过git的!
补一张图,是文件结构图。
相关文章推荐
- SPOJ DQUERY树状数组离线or主席树
- JDBC连接池、监控组件 Druid
- SPOJ DQUERY树状数组离线or主席树
- 交换机远程配置
- 从初识Linux到离不开系列(五)踏阶而上
- MVC_Ajax_2
- 2.18模拟赛总结
- 解决java mail发送TXT附件被直接显示在正文中的问题
- 解决ubuntu中apache2的url大小写敏感问题。
- 第三方图片加载框架对比分析
- Objective-C内存管理
- 友盟统计初步
- JDK,JRE,JVM区别与联系
- JAVA学习记录 -- 线程Ⅰ
- hadoop机架感知--加强集群稳固性,该如何配置hadoop机架感知
- Java工程师成神之路
- 愿以真心换真心—不妄求(2015年终总结)
- 数组概述
- 愿以真心换真心—不妄求(2016年终总结)
- 欢迎使用CSDN-markdown编辑器