ASP.net计算机专业大学生综合交流平台的设计与实现(4)
时间:2017-02-09 10:57 来源:毕业论文 作者:毕业论文 点击:次
5.系统实现 根据需求分析系统在实现的过程中需要对系统的各个功能模块进行完善,会员模块的登陆注册,资料修改。帖子模块的发帖、回帖。后台模块的用户管理,帖子审核,回复的审核,板块的设置。系统是由三层架构实现,所以在系统实现方面也从三层架构的的三个层面上来进行讲解。详细介绍三层架构中业务逻辑层 、数据访问层、表示层。包含的内容。 5.1系统的业务逻辑层实现 在各个功能模块中,用户登录模块要求:用户登录是一个验证过程。首先通过脚本来验证是否为空,只有在用户名密码和验证码的地方都不为空的时候才连接数据库进行验证,这样可以减少数据库的压力,当数据库存在这个字段,用户名和密码都匹配时登录成功,登录成功之后可以进自己的空间修改自己的个人信息,也只有登录之后才能自由的在论坛中发帖回复等操作。发帖操作模块要求:发帖操作模块是指注册会员在登陆后,会员所具有的操作权限。主要的功能为搜索帖子,发帖。论坛管理员操作模块要求:管理员通过后台登陆界面登陆之后,可以对论坛注册用户、论坛帖子、论坛板块等模块进行管理。 5.2系统的数据访问层实现 在数据访问层主要是为业务逻辑层和UI层提供数据服务,虽然不是对数据库中原始数据的操作,但是通过调用数据库的中数据,来实现各个层对数据的需求。 DbHelperSQL中的类中主要方法功能详细描述如下表1 DbHelperSQL类的主要方法说明表所示。 表1 DbHelperSQL类的主要方法说明 方法名 说明 ColumnExist 判断是否存在某表的某个字段,此方法的返回值类型是bool。 ExecuteReader 执行查询语句,返回SqlDataReader ( 注意:调用该方法后,一定要对SqlDataReader进行Close )。 ExecuteSql 执行SQL语句,返回影响的记录数,返回值类型是整型。 GetMaxID 获取表中新添加记录的某一列的值。返回值类型是整型。 GetSingle 执行单条计算查询结果语句,返回查询结果(object)。 Query 执行查询语句,返回DataSet数据集。 RunProcedure 执行存储过程,可以返回的类型: SqlDataReader、int(影响的行数)、DataSet数据集。 5.3系统表示层实现 在用户界面本系统是通过WEB方式来让用户实现各个模块的功能,下面一发帖模块为例,来描述三层之间的调用。 用户在发帖的时候WEB会从session中检测是否已经登录,如果没有登录,则跳转到登录界面让用户登录。这时调用Model层将前台获取的数据进行封装,封装之后调用BLL层中的BBSuser.cs中的Exists方法,Exists方法将封装好的数据传递给DAL层中的ColumnExist方法查询数据库中中的User表中是否存在该会员的记录,最后返回一个bool值。当bool为ture时,则登陆成功。根据访问历史记录返回到发帖界面。用户开始输入发帖的标题,发帖内容等信息,在触发提交按钮时,Model层继续将需要的发帖人ID,发帖标题,发帖内等容进行封装,然后调用BLL层的Topick1.cs中Add方法将封装好的数据通过DAL中的DbHelperSQL类中的ExecuteSql方法,最后同样返回一个bool值,当bool为ture时表示发帖成功。经过上述流程实现了发帖模块中的发帖功能。功能演示如图5 功能演示图所示。 图5 功能演示图 6.系统测试 系统测试的意义就在于能够在发布之前找到设计过程中没有发现的BUG,这一点在我的实习期间就有体会,测试首先应该从功能模块上进行验证是否功能齐全,其次应该对一些隐藏的漏洞进行通过系统的测试方法检测出存在的问题。特别是涉及安全问题的时候。本系统的部分测试用例如表2所示。 (责任编辑:qin) |