数据库系统原理课程设计报告
设 计 题 目
高校教材管理系统
学生专业班级
计算机科学与技术 1701
学生姓名(学号)
张昆松(20170202223)
设计小组其他同学姓名(学号) 无
指 导 教 师
邓立苗
完 成 时 间
2019.11.15
设 计 地 点
中享思途
2019 年
11 月
19 日
目录
1.课题的背景和意义 ........................................................................................................................1
2.需求分析 ........................................................................................................................................1
3.数据库设计 ....................................................................................................................................1
3.1 概念结构设计 ....................................................................................................................2
3.2 逻辑结构设计 ....................................................................................................................2
3.3 物理结构设计和数据库实施 ............................................................................................2
4.系统设计与实现 ............................................................................................................................3
总结 .................................................................................................................................................37
1.课题的背景和意义
近年来,随着科学技术的高速发展,知识更新的步伐越来越快,高校新教材不涌现,老教
材改版修订的周期越来越短,加上高校招生规模的不断扩大,持续多年的扩招,高等院校
的在校大学生和研究生数量迅速增加,各校专业设置也因适应市场需要而呈现多样性和多
变性,因而对教材的需求量和使用也相应地大幅度增加,使得高校教材管理工作面临学科
杂、教材品种多、数量大、新老教材难以衔接、库存积压快速增加、工作人员和管理部门
的劳动强度越来越大,为获取有效的信息所花费的时间也越来越长。在教材选用计划的制
定、订购、进货、入库、发放、收费、统计、信息收集和反馈等--系列的管理进程中,其
周期过长使得教材的选用和淘汰等明显滞后于知识、技术的发展和教材本身版本的更新。
这种状况不但与现实高校教材管理的业务需求不相适应,并且也与高校信息化建设的发展
趋势不相适应。因此,高校教材管理人员目前都想拥有--套方便高效的计算机化的管理信
息系,加强各部门之间信息的流通,通过正确的统计分析,使教材管理工作上一个新的台
阶,最终实现教材管理的全面自动化。随 着高等院校的迅速发展,专业和高校学生人数
的不断增加,高校教材管理变成了-
-项相当繁重的工作。伴随着高校信息化建设的快速
普及,开发出一- 套科学化的高校教材管理系统尤为迫切,教材管理系统的开发可以提
高高校教材管理效率,为教材管理人员创造一个更人性化、规范化、多功能的管理平台。
2. 需求分析
该教材管理系统利用网络进行教材的选定,自动生成订书单,力求达到零库存,并且所用
的各种原始表可利用校园局域网直接从网上获得,订购教材之前先对教材进行编号,而不
是教材发来以后才进行编号,减少了手工作业,计算机化程度高,计算机上教材的入库和
出库是由-位科员操作完成的,这样在每学期发放教材的高峰期可减短时间;并且出库时用
到学生和教师订购登记库,也减短了出库时间。减少了手工作业,使计算机成为实现功能
是主体,充分发挥应有的高效率。在计算教材订购数量时,根据教学计划报表与教材选定
任务单对照库存并进行精细计算,数据准确,学生可以购买需要的教材,老师也可以购买
零散教材,订购数据准确,减少了库存上的压力;
1
3. 3.数据库设计
3.1 概念结构设计
3.2 逻辑结构设计
书(书号,书名,出版社,类型,数量)
外码:出版社和类型
出版社(出版社名,地址)
类型(类型名,数量)
用户(用户名,密码)
3.3 物理结构设计和数据库实施
数据库名:textbook
表 1 表名:书
表 2 表名:出版社
表 3 表名:类型
2
表 4 表名:用户信息
4. 系统设计与实现
(1)登录界面
package com.qau.textbook.swing;
import com.mysql.cj.log.NullLogger;
import javax.swing.*;
3
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.*;
public class LoginTest {
public static void login() {
JFrame jf =new JFrame("登录界面");
JFrame jf1=new JFrame();
jf.setSize(450,250);//设置窗口大小
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel jp=new JPanel();
jp.setLayout(null);
jp.setBackground(Color.white);
JLabel jl=new JLabel("用户名");
JLabel jl1=new JLabel("密码");
JLabel jl2=new JLabel(new ImageIcon("E:\\Java SE with
IDEA\\src\\com\\qau\\textbook\\image\\校徽.jpg"));
jl2.setBounds(300, 10, 100, 100);
Font font = new Font("楷体",1, 18);
4
jl.setFont(font);
jl1.setFont(font);//设置 JLabel 的字体
jl.setForeground(Color.red);
jl1.setForeground(Color.red);
jl.setBounds(85,50,55,20);
jl1.setBounds(85,80,55,20);
jp.add(jl);
jp.add(jl1);
jp.add(jl2);
JTextField jt=new JTextField();
//JTextField jt1=new JTextField();
JPasswordField jps = new JPasswordField ();
jps.setEchoChar('*');
jt.setBounds(145,50,85,20);
//.setBounds(145,80,85,20);
jps.setBounds(145,80,85,20);
jp.add(jt);
//jp.add(jt1);
jp.add(jps);
JButton jb=new JButton("登录系统");
JButton jb1=new JButton("退出系统");
5
jb.setBounds(100,140,85,40);
jb1.setBounds(200,140,85,40);
jp.add(jb);
jp.add(jb1);
jf.add(jp);
jf.setVisible(true);
jb.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent actionEvent) {
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
try{
String text=jt.getText();
String text1=jps.getText();
Class.forName("com.mysql.cj.jdbc.Driver");
conn =
DriverManager.getConnection("jdbc:mysql://localhost:3306/textbo
ok?characterEncoding=utf8&useSSL=false&serverTimezone=UTC",
6