#Technology# 这是一个基于nodejs+express+mysql的小型web项目,由于公司实行一个技术分享交流制度,即开发人员每月有一人进行一次技术分享,这样便于大家的学习。为了统计同事们学习的掌握以及分享的技术含量,便开发了这个小node项目 ##项目功能分类##
- 登录注册功能
- 给主讲人打分功能
- 主讲人选取下个月的主讲人
- admin最高权限可看数据
##Technology用到的技术## nodejs+express+mysql 由于作者这这两个月在疯狂地学习前端node的相关技术,便拿这个来小试牛刀了
###首先,安装node+express+mysql开发环境就不一一介绍了,请翻阅资料,我们直接进入主题###
###目录结构###
--technology //主目录
--bin //配置node服务器参数
server
--mysql
config.js //mysql信息,账号密码等
--node_modules //自动导入的express模块包
....
public // 静态文件
css、js、img
--routes // 路由机制,此项目中没有和业务逻辑分开来写
admin.js //处理admin页面的业务逻辑
grade.js
index.js
lottery.js
--views //view层,存放页面
admin.html //处理admin页面的业务逻辑
error.html
grade.html
index.html
lottery.html
app.js //重点,配置路由和静态文件,以及express的模板引擎,
package.json //存储版本号和开发moduels用到的东西
technology.sql //数据库的表和部分数据
##主要代码解释 app.js 将模板引擎的view层有ejs变成html模板引擎
... app.set('views', path.join(__dirname, 'views')); app.engine('.html', require('ejs').__express); app.set('view engine', 'html'); ...
将静态文件夹指向public文件夹,名称可以自定义
... app.use(logger('dev')); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); app.use(cookieParser()); app.use(express.static(path.join(__dirname, 'public'))); ...
登录页面 注册页面
打分页面 抽奖页面
##使用说明## clone or download之后
解压,在安装好环境的前提下
使用navicat创建明名为technology的数据库,
右击将technology.sql文件运行
进入项目文件夹,导入需要的包
cd --technology npm install
安装mysql数据库驱动
npm install mysql
启动项目
npm start
注:使用npm慢的或者被公司墙的可以使用国内淘宝镜像,cnpm代替npm即可
打开浏览器,输入
http://localhost:8888/index即可访问,
由于主要是兼容手机端的,所以,只要手机保持在跟电脑在同一网段,并且可直接打开手机浏览器将localhost改成你电脑的ip地址即可访问
获取ip地址的方法-> win(Alt左边)+R -> cmd + enter -> ipconfig + enter;
如果你喜欢,别忘了给星星