5.8 管理员端查询模块的实现。
5.8.1 查询学生信息功能的实现。
"查询学生信息"窗体可按多种方式查询数据库中存在的学生信息,并且可以进行模糊查询。对于查询的结果,可以通过报表打印输出,其窗体界面如图 5.14 所示。
在"查询学生信息"窗体的 Load 事件中,分别将年级、班级数据添加到"年级"、"班级"两个组合框中。
当"年级"组合框中的数据发生改变时,"班级"组合框将只显示属于该年级的班级。
单击"查询"按钮,将根据用户输入条件生成一个 SQL 语句,"查询条件"每增加一项,则系统在查询时会增加一个过滤条件(通过 SQL 的 AND 语句连接),最后将结果显示在上方的表格中。
单击"打印报表"按钮即可以打印查询后得到的学生信息的报表。
"查询学生成绩"窗体的实现方法与"查询学生信息"窗体类似,只是选取查找的表不同,故不再详细叙述。
5.8.2 打印报表功能的实现。
本系统采用 VB 自带的 DataReport 对象实现打印报表功能。
DataReport 对象是一个可编程对象,即数据报表设计器(Data Reportdesigner)。DataReport 为 VB 提供的报表设计器,用它可方便地生成报表文件。
学生信息报表的简要的创建过程为:在"工程资源管理器"中单击右键,在菜单栏处选择"添加→DataReport",打开一个空白报表,命名为 Student_Report.
从左侧工具栏中选择相应的控件,放置于报表对应的分栏中,调整位置。
保存后即可完成"学生信息报表"的创建。
"学生成绩报表"与"学生信息报表"创建方法类似,故不再详细叙述。
5.9 学生端的实现。
5.9.1 登录模块的实现。
本系统学生端使用 JSP 中的 JDBC 实现页面与数据库的连接,并实现学生对个人信息的查询和密码修改等功能。
JDBC(Java Data Base Connectivity,Java 数据库连接)一种非常常用的 JavaAPI,用于执行 SQL 语句,并且可以支持不同的关系数据库,JDBC 是由依靠 Java 语言编写而成的一组类和接口构成。JDBC 为程序员提供了一个标准 API,根据这个 API可以构建更加高级的接口和工具。
一般来说,通过 JSP 对数据库进行连接需要以下三个步骤:
(1)根据不同的数据库驱动程序的名称加载对应的驱动程序;(2)根据获得的连接的字符串,在 DriverManager 取得与数据库的连接;(3)连接后在 Connection 数据库的对象的基础上对数据进行增加、修改、删除、查询操作.对于不同的数据库,数据库驱动程序的名称和连接的字符串并不相同,以本学生信息管理系统所用到的 SQL Server 2000 数据库而言,数据库驱动程序名称为com.microsoft.jdbc.sqlserver.SQLServerDriver , 连接字符串为jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Student , 其中Student 为本系统的数据库的名称。
学生输入用户名和密码后,系统判断数据库中是否存在该学生的姓名,若存在则再次判断该学生的密码与数据库中既有密码对应,若对应则该学生可以进入系统。当某一名学生输入密码错误达三次以上,则页面自动关闭。
5.9.2 学生端主窗体的实现。
主窗体由 Main.jsp 实现,列出学生可以使用的四个功能:查询学生信息、查询成绩信息、修改密码,以及安全退出功能。
5.9.3 学生端修改密码模块的实现。
修改密码模块由 Password.jsp 实现。
5.9.4 学生端查询模块的实现。
查询学生信息由Information.jsp实现,当学生在主窗体中选择查询学生信息后,系统利用 SQL 语句读取数据库中该学生的信息并且列表显示。