数据库课程设计:SQL Server + Express + node.js + ejs 论坛管理系统
前言
这是一篇对数据库课程设计的总结,这不是教程也不是指导,只是我的经验之谈,其中可能有许多错误,请小心,不要被误导。祝愿你看了这篇文章后能做出更好的设计。
我对web开发并不熟悉,而我们的课程设计只有一周的时间。这决定了我不能引入一些复杂的东西,它们难以学习,而且出错也很难解决。最重要的是我讨厌复杂的东西。
所以我使用node.js + express + ejs + html + css + js,都是相对简单的东西。
如果你有一些html + css + js基础,那么其他三者就不是问题。
课程设计介绍
我们做的是一个论坛管理系统,实际上,只实现了:
- 用户注册,登录,退出
- 发帖、评论、回复评论
- 修改帖子
程序代码是由我写的,但是组员们也提供了很多帮助(我们三人一组)
参考资料
- 使用 Express + MongoDB 搭建多人博客
这是相当好的文章,写得很简单。
先是构建一个简单的博客系统,然后添加更多的功能
然而,这篇文章有许多错误,应该也不能说是错误。因为各个组件版本的原因,可能将其代码在你的环境运行时会出现问题。
此外,这个博客是使用MongoDB作为数据库。国内数据库课程设计需要使用SQL Server - 简明 MongoDB 入门教程
MongoDB感觉要比SQL更好用,这篇文章也写的很好。我本来是使用MongoDB作为数据库,后来再同SQL连接 - NodeJs+Express+SqlServer简易后台API服务搭建
如何连接SQL Server可以参考这篇,具体mssql的用法,最好还是参考GitHub - Nodejs中connect-flash模块的调用
- JS - Promise使用详解1(基本概念、使用优点)
以前学习js时,没有对回调深入了解。感觉回调真是让人难受,使用Promise可以更舒服点,但本质上还是一样的
一些资源
如果想让网站有个好看的图标可以在icons8下载,其有不少免费的图标。
让文章支持markdown,可以使用markdown-it
差点忘了,连接SQL Server这个坑,我连接SQL花了许多时间。结果发现服务根本就没有开启。
参考:node mssql 无法连接sql server
我的项目
https://github.com/xiyu714/WhyForum
关于具体实现请看我的代码,数据库的设计在readme中给出。
注意
这里记录一些我遇到的坑
- 不熟悉箭头运算符,不要使用箭头运算符,参考:少年,不要滥用箭头函数啊:JS中lambda表达式的优缺点和使用场景
- 在开发中,不要使用浏览器缓存,参考:快速禁止Chrome浏览器缓存
其他
本来是数据库课程设计,但实际上,我在前端上花的时间要更多。
SQL Server有许多功能,比如触发器、存储过程等,作为数据库课程设计我本应该使用他们的。但是在经过思考后,我并没有使用。你必须清楚哪些是需要的在前端做的,哪些是需要在SQL Server做的。
本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。转载请注明出处!