学校教材管理系统任务书.docx
《学校教材管理系统任务书.docx》由会员分享,可在线阅读,更多相关《学校教材管理系统任务书.docx(29页珍藏版)》请在冰点文库上搜索。
学校教材管理系统任务书
一设计目的
通过课程设计,使学生能进一步巩固课堂上所学的知识,深刻把握Java技术的重要概念及其面向对象的特性,掌握软件开发的基本流程,锻炼学生应用面向对象的思想和设计方法解决实际问题的能力,培养学生合作精神和技术文档撰写能力。
二设计内容
(1)题目分析,查找资料和总体设计。
(2)详细设计、代码编制、程序调试。
系统功能要求如下:
①具有用户管理和登录功能
②具有教材信息的录入功能
③具有数据查询、删除、修改功能
④具有输出功能
⑤具有统计功能
(3)结果分析、完成课程设计说明书。
三设计要求
(1)只能使用Java语言,采用面向对象方法进行设计,要求使用结构体数组或链表编写程序,源程序要有适当的注释,是程序容易阅读。
(2)程序的界面、逻辑功能和数据的存储尽可能的分开,至少采用文本菜单界面(如果能采用图形菜单界面更好)。
(3)学生可根据自身情况酌情增加新功能(视情况可另外加分)。
(4)独立完成课程设计,并完成课程设计报告,报告应记录设计的过程,尤其是分析/设计/实现过程中的决策。
四设计过程
1任务解析
结构设计:
确定系统由哪些模块组成,以及这些模块之间的相互关系。
过程设计:
确定每个模块的处理过程。
其中,结构设计是总体设计阶段的任务,而过程设计则是详细设计阶段的任务。
2程序结构分析
新教材录入功能介绍
此模块的功能是注册新教材的基本信息,以供之后的教材出入库等其他功能所用。
用数据库的book表记录信息。
其中的基本信息为教材编号、教材名称、教材作者、出版社、教材单价、出版时间和库存量。
系统功能总框图
3数据结构分析
Book_list表中保存的是教材出入库情况,包括:
编号、教材编号、教材名称、出库/入库、出库/入库时间和数量。
如表3.3。
表3.3教材信息表
字段名称
数据类型
长度
备注
id
文本
10
编号
Book_id
文本
20
教材编号
Book_name
文本
20
教材名称
In_out
文本
20
出库/入库
Inout_date
文本
15
出库/入库时间
amount
文本
50
数量
4功能实现
教材出/入库登记功能实现
此模块的具体功能是登记教材的出/入库情况,登记的内容有教材的名称、教材的编号和数量,并可选择出库还是入库操作
教材信息管理功能实现
此模块的功能是管理教材的基本信息,根据数据库book表中教材的名称,查询出此教材的基本信息,包括:
教材作者、出版社、教材单价、出版时间和库存量。
可选择修改这几项的信息,或者直接删除此教材的所有信息。
运行界面如图4.10所示。
5系统测试
主界面功能实现
系统主界面
五设计总结
在大家的努力下,终于完成了这次的课程设计。
通过这次的课程设计,让我充分体会到团队合作的重要性,也让我对教务管理系统的制作有了更扎实的掌握。
在这次的设计过程中,虽然遇到了一些问题,但经过一次一次的思考,一遍一遍的检查终于找出了原因所在,也暴露出了以前在这方面的不足之处。
实践出真理,通过亲手制作,使我掌握的知识不再是纸上谈兵。
参考文献
[1]黄明,梁旭编著.Delphi信息系统设计实例.北京:
机械工业出版社.2005年3月第二版
[2]耿祥义.JAVA2实用教程.北京:
清华大学出版社,2006
[3]朱仲杰.JAVA2全方位学习.北京:
机械工业出版社,2006
[4]张思民.JAVA程序设计实践教程.北京:
清华大学出版社,2006
[5]汤一平.Java语言程序设计.北京:
科学出版社,2006
[6]刘艺.Java程序设计大学教程.北京:
机械工业出版社,2006
[7]耿祥义.Java课程设计.北京:
清华大学出版社,2003
[8]SharonZakhour.Java教程.北京:
人民邮电出版社,2007
附录
packagecom.Jiaocai.condb;
importjava.sql.*;
/**
*
*@authorAdministrator
*/
publicclassGetStatement{//数据库连接功能
publicGetStatement(){
}
privateConnectionconn;
privateStatementst;
publicStatementreturn_statement()throwsClassNotFoundException,SQLException{
Class.forName("com.mysql.jdbc.Driver");//加载驱动
conn=DriverManager.getConnection("jdbc:
mysql:
//localhost:
3306/jiaocai","root","123");//获取连接
st=conn.createStatement();//创建语句对象
returnst;
}
publicvoidclose_all()throwsSQLException{
st.close();
conn.close();
}
}
publicclassApplyextendsjavax.swing.JFrame{//系统登录功能
publicApply(){
initComponents();
}
/**Thismethodiscalledfromwithintheconstructorto
*initializetheform.
*WARNING:
DoNOTmodifythiscode.Thecontentofthismethodis
*alwaysregeneratedbytheFormEditor.
*/
@SuppressWarnings("unchecked")
//
privatevoidinitComponents(){
jPanel1=newjavax.swing.JPanel();
jTextField1=newjavax.swing.JTextField();
jLabel1=newjavax.swing.JLabel();
jPasswordField1=newjavax.swing.JPasswordField();
jLabel2=newjavax.swing.JLabel();
jLabel3=newjavax.swing.JLabel();
jButton1=newjavax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("教材管理系统");
setLocationByPlatform(true);
setResizable(false);
jLabel1.setFont(newjava.awt.Font("宋体",0,36));
jLabel1.setText("教材管理系统登录");
jLabel2.setFont(newjava.awt.Font("宋体",0,14));
jLabel2.setText("用户名:
");
jLabel3.setFont(newjava.awt.Font("宋体",0,14));
jLabel3.setText("密码:
");
jButton1.setText("登陆");
jButton1.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
ad_denglu(evt);
}
});
}
publicclassMainJieMianextendsjavax.swing.JFrame{//主界面功能
IntegerDJ;
StringYName;
/**CreatesnewformMainJieMian*/
publicMainJieMian(Integerdj,Stringyname){
initComponents();
DJ=dj;
YName=yname;
if(dj!
=2){
jMenuItem1.setEnabled(false);
jMenuItem9.setEnabled(false);
jMenuItem2.setEnabled(false);
}
}
/**Thismethodiscalledfromwithintheconstructorto
*initializetheform.
*WARNING:
DoNOTmodifythiscode.Thecontentofthismethodis
*alwaysregeneratedbytheFormEditor.
*/
@SuppressWarnings("unchecked")
//
privatevoidinitComponents(){
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("教材管理系统");
setLocationByPlatform(true);
setResizable(false);
jLabel1.setFont(newjava.awt.Font("宋体",0,36));
jLabel1.setText("欢迎使用教材管理系统");
jMenu1.setText("系统管理");
jMenuItem1.setText("添加用户");
jMenuItem1.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
addAmin(evt);
}
});
jMenu1.add(jMenuItem1);
jMenuItem9.setText("查询用户");
jMenuItem9.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
selectAdmin(evt);
}
});
jMenu1.add(jMenuItem9);
jMenuItem2.setText("修改/删除用户");
jMenuItem2.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
updateAdmin(evt);
}
});
jMenu1.add(jMenuItem2);
jMenuItem11.setText("修改密码");
jMenuItem11.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
xiugaimima(evt);
}
});
jMenu1.add(jMenuItem11);
jMenuItem3.setText("退出系统");
jMenuItem3.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
tuichu(evt);
}
});
jMenu1.add(jMenuItem3);
jMenuBar1.add(jMenu1);
jMenu2.setText("教材管理");
jMenuItem8.setText("添加新教材信息");
jMenuItem8.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
addJcInfo(evt);
}
});
jMenu2.add(jMenuItem8);
jMenuItem10.setText("查询教材信息");
jMenuItem10.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
selectJcInf(evt);
}
});
jMenu2.add(jMenuItem10);
jMenuItem7.setText("修改/删除教材信息");
jMenuItem7.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
updateJcInf(evt);
}
});
jMenu2.add(jMenuItem7);
jMenuBar1.add(jMenu2);
jMenu5.setText("库存管理");
jMenuItem6.setText("教材出/入库登记");
jMenuItem6.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
kucunInsert(evt);
}
});
jMenu5.add(jMenuItem6);
jMenuItem4.setText("教材出/入库查询");
jMenuItem4.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
kucunJlselect(evt);
}
});
jMenu5.add(jMenuItem4);
jMenuItem5.setText("教材库存查询");
jMenuItem5.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
kucunliang(evt);
}
}
}
publicclassAddAdimextendsjavax.swing.JPanel{//用户管理功能
/**CreatesnewformAddAdim*/
publicAddAdim(){
initComponents();
}
/**Thismethodiscalledfromwithintheconstructorto
*initializetheform.
*WARNING:
DoNOTmodifythiscode.Thecontentofthismethodis
*alwaysregeneratedbytheFormEditor.
*/
@SuppressWarnings("unchecked")
//
privatevoidinitComponents()
privatevoidadd_Admin(java.awt.event.ActionEventevt){
//添加管理员
if(jTextField1.getText().length()==0||jPasswordField1.getPassword().length==0||jPasswordField2.getPassword().length==0||jTextField2.getText().length()==0){
javax.swing.JOptionPane.showMessageDialog(this,"资料不全,请完善资料","错误",javax.swing.JOptionPane.ERROR_MESSAGE);}
else{
Stringname="";
Stringpw="";
Stringpwa="";
Integeryonghu;
name=jTextField1.getText();
pw=String.valueOf(jPasswordField1.getPassword());
pwa=String.valueOf(jPasswordField2.getPassword());
yonghu=Integer.valueOf(jTextField2.getText());
privatevoidinitComponents(){//教材库存查询功能
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("查询教材信息"));jTable1.setModel(newjavax.swing.table.DefaultTableModel(
newObject[][]{
},
newString[]{
}
));
jScrollPane1.setViewportView(jTable1);
jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("查询条件"));
jButton1.setText("查询");
jButton1.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
select_jcinf(evt);
}
});
jLabel1.setText("教材编号:
");
jLabel2.setText("教材名称:
");
jLabel3.setText("出版社:
");
jLabel4.setText("作者:
");
privatevoidselect_jcinf(java.awt.event.MouseEventevt){
//TODOaddyourhandlingcodehere:
Stringshuhao=jTextField1.getText();
Stringname=jTextField2.getText();
Stringau=jTextField4.getText();
Stringpub=jTextField3.getText();
Select_JcInfsa=newSelect_JcInf();
ResultSetrs;
try{
rs=sa.returnResult(shuhao,name,au,pub);
DefaultTableModeldtm;
Object[][]ob={};
String[]st={"书号","书名","作者","出版社","单价","出版时间","库存量"};
dtm=newDefaultTableModel(ob,st);
for(;rs.next();){
Object[]data={rs.getString("book_id"),rs.getString("book_name"),rs.getString("author"),rs.getString("publisher"),rs.getString("price"),rs.getString("publish_date"),rs.getString("quantity")};
dtm.addRow(data)
}
rs.close();
jTable1.setModel(dtm);
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
}catch(Exceptione){
e.printStackTrace();
}
}
publicclassKucunJlselectextendsjavax.swing.JPanel{//教材出/入库查询功能
/**CreatesnewformKucunJlselect*/
publicKucunJlselect(){
initComponents();
}
privatevoidinitComponents(){
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("教材出入库记录查询"));
jTable1.setModel(newjavax.swing.table.Defa