[nodejs] nodejs开发个人博客(三)载入页面
2023-02-18 15:49:56 时间
模板引擎
使用ejs作为我们博客的前端模板引擎,用来从json数据生成html字符串
安装:npm install ejs -save
使用:入口文件中写入下面代码,定义/view/目录为视图目录
/*模板引擎*/ application.set('views',__dirname+'/views'); application.engine('.html',require("ejs").__express); application.set('view engine','html');
首页路由控制器
/** * 首页控制器 */ var router=express.Router(); router.get('/',function(req,res,next){ /*渲染模板*/ res.render("home/index"); }); module.exports=router;
此时会加载/view/home/index.html模板文件,浏览器里正常输出
链接数据库
入口文件index.js
/*链接数据库*/ global.db=require("./model/db").getInstances();
数据库模型文件/model/db.js
/** * 数据库操作类 */ var db={ /*数据库对象*/ db:null, /*构造函数*/ getInstances:function(){ this.connectDatabase(); return this; }, /*链接数据库*/ connectDatabase:function(){ var mysql=require('mysql'); var db=mysql.createConnection({ host:C.DB_HOST, user:C.DB_USER, password:C.DB_PASS, database:C.DB_NAME }); db.connect(); this.db=db; this.C=C; }, select:function(tableName,callback,where,field){ field=field ? field : '*'; var sql="select "+field+" from "+this.C.DB_PRE+tableName; if(where){ sql+=" where "+where; } this.db.query(sql,callback); } } module.exports=db;
相关文章
- 面试系列-kafka exactly once语义
- 面试系列-kafka消息相关机制
- 面试系列-kafka内部通信协议
- 面试系列-kafka高可用机制
- 面试系列-kafka偏移量提交
- 面试系列-kafka事务控制
- 面试系列-kafka基础组件及其关系
- 面试系列之-rocketmq重试队列和死信队列
- 面试系列之-rocketmq文件数据存储
- 面试系列之-rocketmq长轮询模式
- 面试系列之-rocketmq零拷贝原理
- 面试系列之-rocketmq组件及关系
- 面试系列之-rocketmq消息机制
- 面试系列之-rocketmq高可用
- 面试系列之-rocketmq通信组件
- 大数据架构、高性能、数据治理面试题及答案
- 一个 DevOps 面试小宝典
- 使用 Scrapy + Selenium 爬取动态渲染的页面
- 推荐系统遇上深度学习(一四一)-[快手]移动端实时短视频推荐
- 统一、灵活、全面,这个好用的语义分割开源库全面升级啦