3.4模块设计
总主界面登陆后,可以选择用户,是学生用户或者教师用户。 如果选择学生用户,则进入学生登录界面,在这个界面上输入学生姓名和用户密码。输入后单击“查询”按钮,若密码正确,这显示该学生本人信息,若密码不正确,这提示密码错误。输入后单击“修改”按钮,跳转到用户修改密码界面进行修改,单击“注册”按钮,跳到用户注册页面进行注册。
如果选择教师用户,则进入教师登陆界面,在这个界面上输入教师姓名和用户密码,输入后单击“登录”按钮,则进入教师主界面。在教师主界面可以选择进行查询操作还是修改操作。在查询操作中包含查询学生基本信息。
若要查询学生基本信息,点击菜单项则进入学生基本信息检索界面,在此界面的检索方式中选择要检索的数据属性,在检索内容框中输入检索的具体信息,例如,检索“姓名”字段时,要键入某个学生姓名。输入后,单击“查询该生信息”按钮,则开始数据库查询。单击“浏览学生信息”按钮,则查看所有学生的信息。如果数据库检索到所需信息,这生成列表显示检索结构,如果没有所需信息,则列表中的内容为空。
如果教师要进行修改操作,则在教师主界面上选择修改菜单项,在此项中,选择要修改的具体内容,总共有两项修改操作:增加新生信息,删除毕业生信息(这两个是对学生基本信息表的操作)。在增加信息操作中,按照标签提示依次输入要增添的记录值,输入完毕后,单击“添加”按钮,若输入成功,则提示成功,若输入失败,则提示失败。在删除信息操作中,输入要删除信息的学生姓名,单击“删除”按钮,若删除成功,则提示成功,若删除失败则提示失败。
以上就是该学生通讯录管理系统的操作步骤。
3.5系统流程描述
开始
登录
学生登录界面 教师登录
否 否 成功 成功 是 提示密码错误 是 提示密码错误
教师主界面 查询学生信息
查询 修改
学生信息 添加信息 删除信息
四、系统实现
本系统保存在studentcontacts包里
其中包含四个包:connection包,dao包,model包,ui包 1.Connection包中的类:
(1)DBconnection类:此类设置程序与数据库的连接,通过设置驱动类型和数据源来确定要连接的数据库。若连接成功,提示:connection success,若连接失败,提示:connection failure
DBconnection类源代码:
package connection;
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class DBconnection {
public static Connection con=null;
public static Connection getConnection() {
try { } try {
String dbDriver=\; Class.forName(dbDriver);
System.out.println(\); System.out.println(\); e.printStackTrace();
} catch (ClassNotFoundException e) {
con=DriverManager.getConnection(\
}
return con;
System.out.println(\); System.out.println(\); e.printStackTrace();
ost/studentcontacts\,\,\);
} catch (SQLException e) {
}
}
public static void closeConnection() {
if(con!=null)
try {
con.close();
System.out.println(\
success\);
} catch (SQLException e) { }
System.out.println(\); e.printStackTrace();
}
2.Dao包中的类:
(1)StudentDao类:此类中有一个方法,student,作用分别是控制学生登陆。
Studentlogin()方法中,有两个参数,分别传给select语句中的sname(学生姓名)和password(登录密码),利用select语句在student表中检索学生登录信息。若存在此信息,返回true,否则返回false StudentDao类源代码:
package Dao;
import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import connection.DBconnection; public class StudentDao {
public boolean student(String sname,String password) {
DBconnection db=new DBconnection(); Connection con=db.getConnection(); boolean isfound=false; PreparedStatement pst; try {
}
}
pst = con.prepareStatement(\pst.setString(1, sname);
ResultSet rs=pst.executeQuery(); if(rs.next()) isfound=true; e.printStackTrace();
student where sname=? and password=?\);
pst.setString(2,password);
} catch (SQLException e) {
System.out.println(isfound); return isfound;
}
public static void main(String[] args) { }
}(2)TeacherDao
new StudentDao();
类:此类中有一个方法:queryTeacher,作
用是控制教师登陆
queryTeacher()方法中,有两个参数,分别传给select语句中的tname(教师姓名)和password(登陆密码),利用select语句在teacher表中检索教师登陆信息。若存在此信息,返回true,否则返回false TeacherDao类源代码:
package Dao;
import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import connection.DBconnection; public class TeacherDao {
public boolean Teacherlogin(String tname,String
DBconnection db=new DBconnection(); Connection con=db.getConnection(); boolean isfound=false;
password) {