毕业生信息查询系统的设计与实现
b) 查看学生成绩
查看学生成绩的功能是用于查看学生成绩,其系统流程图为例如图5-12所示:
开始
使用SQL语句查询表score
显示查找结果
结束 图5-12 查看学生成绩模块的系统流程图
5.4.2 教师个人中心技术分析
教师个人中心对不同部分采取了不同处理,部分代码如下: <%}else if(id.equals(\)){ %>
这里是通过提交表单给控制器HandleSchoolPassword,由其进行数据库操作。 <%}else if(id.equals(\)){ / ...... <%}else if(id.equals(\)){ %> page=\/> <%} 22 毕业生信息查询系统的设计与实现 %> 这一部分采取的是forward重定向,指向新的页面,由新页面完成功能。 5.5 管理员管理中心模块设计 5.5.1 管理中心概述 用户以管理员身份登录后进入如下的管理员中心页面,它主要包括组成修改密码、创建账号、发布新闻、查看账号申请和课程选择部分组成。 图5-13 管理中心页面 a) 创建学生账号 创建学生账号模块的能是创建学生账号,其系统流程如图5-14所示: 开始 填写账号信息 错误 检验 正确 创建SQL语句更新数据库 结束 图5-14 创建学生账号模块的系统流程图 23 毕业生信息查询系统的设计与实现 创建教师和公司账号实现基本和它一样,所以不再重复。 b) 查看账号申请模块 查看账号申请模块的功能是查看最新账号申请,其系统流程如图5-15所示: 开始 获取登陆信息中的 lasttime作为搜索条件 创建SQL语句查询数据库 显示查询结果 结束 图5-15 查看账号申请模块的系统流程图 c) 课程选择模块 课程选择模块的功能是将学生与对应的课程和教课的老师联系起来。起系统流程图如图5-16所示: 开始 输入需要的数据 使用SQL语句进行插入操作 返回操作成功 结束 图5-16 课程选择模块的系统流程图 5.5.2 管理中心技术分析 管理中心除了使用上面个人中心中的target判断功能外,还是用了多表操作,使之关联,以下是部分代码。 ...... String condition=\; 24 毕业生信息查询系统的设计与实现 sql1=con.prepareStatement(condition); sql1.setString(1,name); ResultSet rs=sql1.executeQuery(); boolean m=rs.next(); if(m==true) { company_address=rs.getString(3); company_id=rs.getString(4); company_scale=rs.getString(5); industry=rs.getString(6); company_type=rs.getString(7); tel=rs.getString(8); email=rs.getString(9); } ...... 上面这部分是从新的申请中获得的信息。 String condition=\; sql=con.prepareStatement(condition); sql.setString(1,name); sql.setString(2,password); sql.setString(3,company_address); sql.setString(4,company_id); sql.setString(5,company_scale); sql.setString(6,industry); sql.setString(7,company_type); sql.setString(8,tel); sql.setString(9,email); int m=sql.executeUpdate(); ...... 上面这部分是利用从connection表中取得的信息和管理员提供的一些信息一起插入新表company中。 6 软件开发与测试 6.1 软件开发技术概述 JSP作为很好的动态网站开发语言得到了广泛的应用。在各类JSP应用中,JSP结合JavaBean成为了一种事实上最常见的JSP程序标准。 a) JavaBean:包含了Web应用中程序功能的核心,负责存储与Web应用相关的数据,集中体现了应用程序的状态。JavaBean在JSP-JavaBean模式中,主要用来处理事务逻辑和数据结构,能够与数据库或文件系统进行交互,承担维护应用程序的责任。 b) JSP:JSP在JSP-JavaBean模式中有两种主要作用:实现视图,通过视图用户可以访问JavaBean中的数据;实现控制,JSP除了负责Web页面视图,还负责整个Web应用程序的流程控制,根据用户的请求类型来决定应用程序的操作,如数据的更新、维护,页面的显示与转发。 通过使用JSP-JavaBean开发模式,可以实现页面的显示和页面内容分离。但是大 25 毕业生信息查询系统的设计与实现 量使用这种模式开发Web应用时,就会导致在JSP页面中嵌入大量的Java控制代码,当页面中处理的业务逻辑复杂时,这些代码使得页面变得很大,因此这种开发模式只适合小型的应用,所以本系统在JSP- JavaBean开发模式的基础上添加了部分Servlet来进一步完善系统。 6.2 通过JavaBean实现和数据库的交互 在通过JavaBean实现和数据库的交互是,首先要创建一个必须实现的功能的对象JavaBean,并将其代码保存为AdminDaoImpl.java(以和数据库中管理员信息表交互的JavaBean为例)然后便可在相应页面中使用。 JSP页面中访问JavaBean主要包含三个步骤: a) JSP页面中导入JavaBean类:通过JSP指令导入JavaBean类 b) JSP页面中声明JavaBean对象:在JSP页面中,使用JavaBean前首先要声明JavaBean。JavaBean的声明通过指令来实现,具体语法定义如下所示: class属性用于指定需要的JavaBean类。 id属性是使用的JavaBean实例的名字,JSP页面的代码中都通过id定义的名字来使用JavaBean实例。 scope属性指定了JavaBean的作用范围。 c) JSP页面中访问JavaBean属性:JSP提供了访问JavaBean的属性的标签,给JavaBean属性赋值采用动作,访问JavaBean的属性采用动作。 如: List all = adminDao.Login(admin);即调用了JavaBean中的方法public List Login(Admin admin)来交互数据库系统。 6.3 软件的测试 软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。 测试方法主要有黑盒测试和白盒测试。 黑盒测试Black-box Testing,又称功能测试、数据驱动测试或基于规格说明的测试,是一种从用户观点出发的测试。被测程序被当作一个黑盒,不考虑程序内容结构和内容特性,测试着只知道该程序输入和输出之间的关系或程序的功能,依靠能够反映这一关系的程序功能的需求规格说明书考虑确定测试用例盒推断测试结果的正确性。软件的黑盒测试被用来证明软件功能的正确性盒可操作性。 白盒测试White-box Testing,又称结构测试、逻辑驱动测试或基于程序的测试。白盒测试依赖于对程序细节的严密检查,针对特定条件和循环集设计测试用例,对软件的逻辑路径进行测试。在程序的不同点检验“程序状态”,一盘定期实际情况 26