基于.net mvc的校友录(四、系统结构图)
这是整个系统结构的预览,话不多说,给个图:
本网站努力为每个人提供一个有效的校友录系统,为参与者提供一个简单有效的交流互动的平台,操作上要求简单、高效,性能上要求稳定、可扩展。在对同类网站系统进行了调查之后,通过重新设计,为网站使用者提供了如下的功能操作:管理员可以管理用户、用户可以搜索班级加入班级,进入班级后可以创建相册上传照片,可以留言发表评论,可以查看别人的通讯录发送小纸条,对于自己的上传的照片、相册可以进行删除操作,也可以退出班级,也可以删除自己的留言。
为了满足上面提出的功能需求,本网站应实现以下功能:
A.前台
a.注册与登录功能:此功能是必须功能,因为每个用户都不一样,而且每个用户的信息都十分宝贵,所以,需要口令进入是十分必要的。用户注册方面没有限制,也不进行实名认证,因为管理员有删除用户的权限,所以,在这个方面可以通过管理员进行控制。
b.查找、创建、加入、退出班级功能:此功能是本系统的核心功能,是实现的前提,因为校友录的一切信息功能都是基于班级的,虽然班级属于学校的下级,但是,学校其实只是班级的一个属性,没有人会针对学校进行什么活动。所以,此系统一定要提供查找已存在的班级,创建未存在的班级,加入已存在的班级,退出已加入的班级这四项前提性功能。
c.相册与相片的控制功能:此功能就复杂一些了,技术上是上传文件,前台是展现文件,此文件多人访问,但一人管理。只能删除自己上传的文件,却可以查看本班所有人上传和创建的相册。此功能是丰富校友录系统的一大特征点,是加强校友之间感情的必要所在,也是大家分享快乐的最佳途径。所以,非常有必要实现。
d.留言板功能:此功能与相册功能的实现相似,用户可以创建新留言,其它用户可以对此留言进行评论,留言的创建者可以删除留言,但是,由于留言功能的敏感性,不提供修改功能,要么存留,要么删除,修改会带了一些无法证明的争论。此功能是校友录的核心功能,也是几乎每个用户登陆都要查看的功能。
e.通讯录功能:此功能也是核心功能之一,在这里面,可以查看同班同学的个人资料,这也是校友录存在的意义,每个人修改了自己的校友录之后其它人都可以看到最新的信息,同时可以给已存在班级的用户发送小纸条,并且回复小纸条。
f.在线聊天室:此功能也是核心功能之一,进入班级之后,可以进入此模块,看见已经处于此模块中的同学,然后大家可以在这里一起聊天。我记得04年的时候,在线聊天室还是非常流行的,当时QQ聊天室就是其中之一,也是我喜欢去的地方,现在还清楚地记得里面的菁菁校园等房间,只是过去了的时光如同流逝了的岁月,永远不会再回来,再多也只是回忆而已。所以,这里放了一个这个,也是作为对当时决心要做IT的年少的自己一个交待吧~
B.后台
a.管理员用户管理模块:可以查看所有用户的信息,可以删除用户,也可以对用户进行密码重置,这给找回密码的用户提供的路径。密码丢失的用户可以与管理员联系,管理员可以重置此密码,然后通知用户。
b.管理员密码设置:此功能只有管理员可以使用,在管理员的密码被窃取之后,可以自己修改密码一保证系统的安全。
转载请标注原地址:http://www.cnblogs.com/ensleep/tag/%E5%9F%BA%E4%BA%8E.net%20mvc%E7%9A%84%E6%A0%A1%E5%8F%8B%E5%BD%95/
基于.net mvc的校友录(四、系统结构图)的更多相关文章
- 基于.net mvc的校友录(五、web.config对的配置以及filter实现的权限控制)
web.config配置文件 此文件是整个系统的配置中心,它告诉iis服务器本网站需要哪些运行时环境,需要哪些环境,将要进行哪些操作,开发人员也会将一个常量性的数据放在此配置中,以备系统全局调用.此文 ...
- 基于.net mvc的校友录(七、文件上传以及多对多关系表的LINQ查询实现)
图片的上传与调用 图片的上传就是文件的上传,在前台使用的是type="file"的input,但是,要将表单声明为multipart/form-data模式,方法是在BeginFo ...
- 基于.net mvc的校友录(六、codefirst的使用以及班级模块的关键部分实现)
通过EF将新用户存入数据库 这里,探讨一下如何使用EF的code first将数据存入数据库,以及如何对用户的密码进行md5加密与验证.下面是用户登陆的前台代码. @using (Html.Begin ...
- 基于.net mvc的校友录(三、实体模型实现)
实体模型设计 由于是实际开发,而且是时间比较紧的,所以,在开发实现过程中,总有一些对原计划的改动: AlumniBookModel数据库实体模型 这是主数据实体类,EF会根据此实体生成数据库,它的每一 ...
- 基于.net mvc的校友录(源程序)
废话不多说,上程序再说: http://pan.baidu.com/s/11MnLo 我.net mvc4的正式学习时长,其实也就一个多月,期间除去玩游戏.听歌.谈恋爱,也就半个月,大神请轻喷~~ 转 ...
- “MVC+Nhibernate+Jquery-EasyUI” 信息发布系统 第四篇(用户管理功能的实现)
“MVC+Nhibernate+Jquery-EasyUI” 信息发布系统 第四篇(用户管理功能的实现) 一.前三篇的内容是否对您有帮助呢?如果有的话,请您继续关注这篇吧,这篇主要是实现”用户管理“的 ...
- .NET MVC 学习笔记(四)— 基于Bootstarp自定义弹出框
.NET MVC 学习笔记(四)—— 基于Bootstarp自定义弹出框 转载自:https://www.cnblogs.com/nele/p/5327380.html (function ($) { ...
- 通过Dapr实现一个简单的基于.net的微服务电商系统(四)——一步一步教你如何撸Dapr之订阅发布
之前的章节我们介绍了如何通过dapr发起一个服务调用,相信看过前几章的小伙伴已经对dapr有一个基本的了解了,今天我们来聊一聊dapr的另外一个功能--订阅发布 目录:一.通过Dapr实现一个简单的基 ...
- 通过Dapr实现一个简单的基于.net的微服务电商系统(十四)——开发环境容器调试小技巧
之前有很多同学提到如何做容器调试,特别是k8s环境下的容器调试,今天就讲讲我是如何调试的.大家都知道在vs自带的创建项目模板里勾选docker即可通过F5启动docker容器调试.但是对于启动在k8s ...
随机推荐
- poj2000
为了凑今天的数,大水题.不解释了,说来惭愧. #include <stdio.h> int main(){ int n; int i,cnt,j; int tot; while(~scan ...
- undefined reference to `pthread_create'问题解决
在编译pthread有关的程序时,出现undefined reference to `pthread_create'这样的错误. 问题原因: pthread 库不是 Linux 系统默认的库,连接时需 ...
- 009Linux密码故障排除
1.Root密码破解/忘记Root密码: 步骤: (1)在系统启动时进入grub选项菜单: 在系统开机读秒时,按回车键,注意,要迅速,读秒的时间很快,但还需注意的是,虽然需要迅速,但是只按一次回车键就 ...
- iOS动画 三维透视投影 m34
transform的结构如下:struct CATransform3D{ CGFloat m11, m12, m13, m14; CGFloat m21, m22, m23, m24; CGFl ...
- Cookie禁用了,Session还能用吗?
Cookie与Session,一般认为是两个独立的东西,Session采用的是在服务器端保持状态的方案,而Cookie采用的是在客户端保持状态的方案.Cookie分为两种,一种可以叫做session ...
- SQL Server 遇到 Automation服务器不能创建对象
Windows 2003 安装SQL Server出现Automation问题 如下: ######安装SQL Server 遇到 Automation服务器不能创建对象问题 解决办法: 1.1 ...
- SqlServer存储过程
新上线的车管系统,今天要给User添加权限,才发现这个后台加权限简直how to play .. 比如有人申请合肥的关务权限: 1.SITE 是合肥 2.ORG 有B81,P81,S81,M81等 3 ...
- .Net 内存泄露
一.事件引起的内存泄露 1.不手动注销事件也不发生内存泄露的情况 我们经常会写EventHandler += AFunction; 如果没有手动注销这个Event handler类似:EventHan ...
- centos6.7下编译安装lamp环境
编译C源代码: 前提:提供开发工具及开发环境 通过“包组”提供开发组件,CentOS 6: "Development Tools", "Server Platform D ...
- php中关于抽象(abstract)类和抽象方法的问题解析
在面向对象(OOP)语言中,一个类可以有一个或多个子类,而每个类都有至少一个公有方法作为外部代码访问的接口.而抽象方法就是为了方便继承而引入的,现在来看一下抽象类和抽象方法分别是如何定义以及他们的特点 ...