大学生软件工程毕业论文设计 - 图文(3)

2019-06-11 15:56

protected static String dbPwd = \private static Connection conn = null; private static String ISBN; private Dao() { try {

if (conn == null) {

//数据库密码

//数据库连接对象

//构造方法

//如果连接对象为空 //加载驱动类

Class.forName(dbClassName);

conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd);//获得连接对象

}

……

}

private static ResultSet executeQuery(String sql) { //查询方法 try {

if(conn==null) new Dao(); //如果连接对象为空,则重新调用构造方法

return conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,

ResultSet.CONCUR_UPDATABLE).executeQuery(sql);//执行查询

} catch (SQLException e) {

e.printStackTrace(); return null;

//返回null值

} finally {

}

}

private static int executeUpdate(String sql) { try {

if(conn==null) new Dao(); //如果连接对象为空,则重新调用构造方法

return conn.createStatement().executeUpdate(sql);//执行更新

//更新方法

} catch (SQLException e) {

e.printStackTrace(); return -1;

} finally {

7

} }

public static void close() {//关闭方法 try {

conn.close();//关闭连接对象

} catch (SQLException e) {

e.printStackTrace();

}finally{

conn = null; //设置连接对象为null值

}

}

第四章 图书管理系统的设计与功能实现

4.1 系统登录模块

相对于图书馆管理系统来说,不是所有的用户都是可以使用的,所以需要添加一个登录模块。并且通过该模块来对用户的合法性进行判断,只有合法的用户才能够进入到系统里。整个登录模块的实现是非常简单的,并不需要太多复杂的输入,只需要输入用户名和密码就行了,相信读者能够快速掌握登录模块的操作模式。登录模块的运行结果如图3-1所示。

图3-1 系统登录界面

4.1.1 登录窗体界面设计

登录窗体的界面设计我依然习惯于采用的是比较传统的方法,新建一个类BookLoginFrame类,是用来显示登录窗体。在登录窗体中需要使用到的四类控件分别为JLabel、JTextFieid、JPasswordField以及JButton。这其中控件JLabel是用来显示最顶部的图片以及标签文本;控件JTextFieid是用来接收用户名输入的信息;控件JPasswordField是用来接收密码输入的信息;控件JButton是用来创建登陆和重置

8

按钮。

图书馆管理系统的主窗体模式是采用由三个部分来组成的。第一部分就是位于主窗体上组最上端的系统菜单栏,是用来实现链接系统功能的菜单。第二部分则是位于菜单栏下面的工具栏,是用来提供各种常用功能的链接。第三部分则是位于工具下的系统功能窗口区域,主要是用来显示各种功能窗口。其运行界面如图3-2所示。

图3-2 主窗体界面

4.1.2操作员登录

在数据库Dao类中新增一个方法check,可以通过该方法来检测用户信息是否合法。该方法分别接收两个参数,一个是操作员用户名name,另一个则是操作员密码passsward。操作员密码可以进行随机设置,如果输入不正确就不能进入系统。

public static Operater check(String name, String password) { Operater operater=new Operater();//操作员信息对象

String sql = \ from tb_operator where name='\

+ \ResultSet rs = Dao.executeQuery(sql);

9

try {

while (rs.next()) {

operater.setId(rs.getString(\operater.setName(rs.getString(\operater.setGrade(rs.getString(\operater.setPassword(rs.getString(\

……

}

4.2图书信息管理模块

图书信息管理模块中包含了两个子模块,分别是图书信息添加模块以及图书信息修改模块。这其中图书信息添加模块是用来录入新的图书信息,图书信息修改模块则是用来修改已有的图书信息。 4.2.1 图书信息添加界面设计

图书信息添加的窗体一共包含由三个部分,第一部分则是位于窗体最上端的图片。第二部分则是位于中间的主面板,是用来提供各种标签和表单元素。第三部分就是位于主面板下的按钮面板,是用来提供添加和关闭两个按钮。其运行界面如图3-3所示。

图3-3 图书信息添加界面

10

4.2.2 检测书籍编号是否已存在

因为不能存在有重复的书籍编号,并且为了防止操作员的操作错误而造成的重复书籍编号,所以需要提供一个书籍编号的监测系统。如果该书籍编号已经存在,则不能进行添加编号,否则可以进行添加编号。

为了检测书籍编号是否存在,则需要在数据库Dao类中添加一个方法,该方法是用来接收输入的书籍编号,然后进行查询该书籍编号对应的书籍记录,其主要方法如下: public static List selectBookInfo(String ISBN) {//根据图书编号查询图书

}

对于书籍编号进行检测,一般都是在操作员输入完书籍的编号,并且准备输入其他的信息时来完成。这就是需要新建一个ISBNFFocusListener监听类,该类则继承了FocusAdoper类,并实现其中的focusLost,其实现的代码如下:

class ISBNFocusListener extends FocusAdapter {

}

public void focusLost(FocusEvent e){ }

if(!Dao.selectBookInfo(ISBN.getText().trim()).isEmpty()){ JOptionPane.showMessageDialog(null, \添加书号重复!\ }

return;

List list=new ArrayList();//保存所有查询到的书籍信息

String sql = \ from tb_bookInfo where ISBN='\

ResultSet rs = Dao.executeQuery(sql);//执行查询 ……//插入数据,关闭连接

4.2.3 图书信息添加

如果要添加图书书籍的信息,首先要在数据库Dao类中添加一个Insertbook方法,通过该方法来实现接受用户输入的所有图书书籍的信息,然后执行插入操作。这其中主要的方法如下:

public static int Insertbook(String ISBN,String typeId,String bookname,

String writer,String translator,String publisher,Date date,Double price){ int i=0; try{

String sql=\ tb_bookInfo(ISBN,typeId,bookname,writer,translator,\

11


大学生软件工程毕业论文设计 - 图文(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《思想道德修养》第05章在线测试

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: