《Java语言课程设计任务书.doc》由会员分享,可在线阅读,更多相关《Java语言课程设计任务书.doc(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Java语言课程设计任务书一、 Java语言课程设计目的和要求1.目的:1)复习、巩固Java语言的基础知识,进一步加深对Java语言的理解和掌握;2)课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力;3)培养学生在项目开发中的团队合作精神、创新意识及能力。2.要求:1)对系统进行需求分析及可行性分析系统实现的目的,项目开发的背景,系统要达到的目标,开发系统所用的开发环境,预期使用的用户等。2)对系统进行总体设计分析系统的功能结构模块,并给出系统的功能结构图,分析系统的数据流程图,并
2、给出系统的数据流程图,设计要符合课题要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理。3)详细设计 分析系统实体,画出每个实体的E-R图。 设计所需的数据表,给出所需数据表的字段名称,数据类型,字符长度,字段说明,约束条件。编码实现每个子功能模块,并进行测试。4)系统总结。二、Java语言课程设计选题如下:可选题目如下:服装进销存管理系统,学生信息管理系统,教务信息管理系统,银行储蓄管理系统,飞机订票管理系统,酒店管理系统,手机缴费管理系统,药店销售管理系统,公司员工工资管理系统,房地产售房管理系统,电脑销售管理系统,派出所户籍管理系统等。1 分配人数,每组设组长一名,负责该组
3、设计工作的协调、分工等。2 设计过程:1) 分析设计准备阶段(按组讨论、对系统功能进行分析,确定算法,并进行明确分工);2) 编程调试阶段(绘制流程图,编制源程序;上机调试,修改程序)3) 总结报告和书写说明书阶段(撰写上交相关资料)3、考核过程16周周六上午答辩。三、 考核内容和方式1、在设计期间,学生要按时上机,设计结束根据记录的设计材料整理成设计说明书。设计说明书中应写下设计中的主要收获,要求对问题有一定的分析,文字简短明确流畅。2、通过设计答辩方式,并结合学生的动手能力,独立分析解决问题的能力和创新精神,设计成绩根据考勤、设计说明书质量、编程情况、答辩表现以及学习态度综合评定。四、 课
4、程设计报告格式及要求1.课程设计任务书封面;2.本组课题及本人任务;3.程序功能简介;4.系统需求分析;5.系统总体设计(系统功能结构图,系统数据流程图);6.系统详细设计(数据库设计,代码设计);7.源程序;8.设计体会。注:系统设计要实用,编程简炼,可用,功能全面;课程设计报告书要清晰简炼,流程图要清楚,图和表的标题要明确;设计上交内容:设计报告书一份(按格式书写);附录源程序文件。附录:图书管理系统的设计报告书,参考附录报告书。 图 书 管 理 系 统 项 目 报 告 书 项目名称:班 级:姓 名:组 别:一、系统需求分析1.系统名称:图书管理系统2.系统介绍: 开发一个图书管理系统,主
5、要有三个部分:图书管理,读者管理,借阅管理。(1) 图书管理主要用于图书信息的相关管理,主要包括图书的添加,图书的查询,图书删除三个功能。(2) 读者管理主要用于读者信息管理,主要包括读者信息的添加,读者信息的查询,读者信息的删除三个功能。(3) 借阅管理主要用于借阅信息的管理,主要包括借阅信息管理和添加借阅信息两个功能。3.开发背景现代图书馆管理的本质在于创新,以往的图书馆管理完全手工操做,通过卡片记录信息,既浪费时间,又浪费人工、纸张,而且书籍和读者的信息查询比较麻烦,不能提供领导管理上需要的各种信息如本馆各种资料分布及借阅(流通)情况。随着电子信息技术的飞速发展,图书馆的工作也发生了实质
6、性的进展和变化。现代化的服务手段逐渐替代传统的手工操作,计算机编目、光盘数据库和网络检索技术等新型的项目开始在图书馆领域普及。在计算机技术、网络技术的进一步冲击下,图书馆随着教育教学改革的深入和素质教育的全面推动,逐渐演变形成数字化图书管理,其作用也越来越重要了。为了使图书馆的管理更科学、更规范,减少重复劳动,节省图书馆建设和管理中的人力、财力,方便读者查询和借阅书籍,所以有必要建立一个图书馆管理系统。这个系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。4. 系统面向的用户群体 本系统为某高校或某单位所开发。立足于校园或单位的实际,着眼于未来发展,
7、建成符合标准化协议、通用性较强、实用的系统,以提高图书信息的现代化发展,实现信息资源的共享。系统的建成无疑会为广大读者和管理者提供极大的帮助。5.开发环境 Eclipse+SQL Sever 2008二、系统总体设计1.系统功能结构图登录窗口图书管理系统主页图书管理读者管理借阅管理图书添加图书查询图书删除读者添加读者查询读者删除借阅查询添加还书2系统数据流程图登录读者管理员借书还书查询图书添加图书删除图书查询读者添加读者删除读者查询三、系统详细设计1. 数据库实体E-R图设计1.1图书信息实体E-R图图书出版时间图书编号书名作者译者出版社价格1.2读者信息实体读者信息学号性别年龄系别身份证号姓
8、名1.3图书借阅实体图书借阅信息还书日期借书日期图书编号身份证号借书数量1.4多图之间的E-R图借阅信息借书数量借书日期归还日期图书图书编号书名作者价格出版日期出版社译者姓名读者身份证号性别年龄学号系别2.数据库表的设计数据库名:db_library2.1图书信息表(tb_abc)列名数据类型长度是否为空tsbh(主键)varchar50否lbchar10是zzchar10是smchar10是yzchar10是cbrqdatetime8是djchar10是cbsvarchar50是2.2读者信息表(tb_reader)列名数据类型长度是否为空namevarchar50是sexchar10是ag
9、echar10是identityCard(主键)char20否datedatetime8是maxNumchar10是2.3图书借阅信息表(tb_borrow)列名数据类型长度是否为空bookISBN(主键)char10否operatorIdchar10是readerISBNdatetime8是borrowDatedatetime8是backdatechar10是isbackchar10是2.4登录表(tb_a)列名数据类型长度是否为空namechar10是passwordchar10是typechar10是3.详细设计 3.1登录界面:登录界面主要是用于进入图书管理系统的主页面,登录页面主要包
10、括:用户,密码和用户类型。只有信息全部正确的时候才能登录成功。加入frame框架,插入了一张背景图片,相应的加入了两个标签和两个文本框和两个按钮。分别是用户名,用户密码和登录按钮,重置按钮完成登录,还添加一个组合框,主要作用是选择用户类型。选择相应的用户类型才能进入。有一个添加用户类型按钮。可以添加用户类型。组合框中的文本框只能显示不能添加文字。单击用户类型按钮时,在列表框中可以添加相应的用户类型。重要代码:(1).添加背景图片:ImageIcon in=new ImageIcon(images/01.jpg);JLabel lable=new JLabel(in);frame.add(lab
11、le);lable.setBounds(0, 0,600, 400);(2).添加组合框: private String yhlb = 老师, 学生, 管理员,其他;private JLabel lxLab = new JLabel(用户类型:);private JTextField textField = new JTextField(15);private JComboBox combox = new JComboBox();private JButton but = new JButton(添加其他类型);private int count = 0;but.addActionListen
12、er(new ActionListener() public void actionPerformed(ActionEvent e) if (count yhlb.length)combox.addItem(yhlbcount+););combox.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) textField.setText(欢迎您+ nameText.getText()+!););(3).登录主界面: st=Dao.conn.createStatement();Strin
13、g sql = select * from tb_a where name= + tname+ and password= + tpass + and type=+ tbox+;ResultSet rs = st. executeQuery(sql);try if (rs.next() infoLab.setText(登陆成功!) ;new ZN();frame.setVisible(false);3.2 主界面主界面主要是用于对选择相应的功能进行相应的功能,主界面主要包括图书管理,读者管理和借阅管理三个功能。 主界面添加JMenuBar菜单条,和三个JMenu菜单,和九个JMenuItem菜
14、单项。还有一个返回登录界面的按钮。添加了背景图片。三个菜单包括:图书信息,读者信息和借阅信息。图书信息中包括:图书信息添加,图书信息查询和图书信息删除。读者信息中包括读者信息添加,读者信息查询和读者信息删除。借阅信息包括借阅信息查询和借阅信息添加。 单击主界面的关闭按钮会弹出一个消息框,提示要离开图书信息管理系统。在查询页面可以以表格的形式显示查询信息。 单击每个菜单项都会弹出相应的frame,可以根据选项作出不同的页面。鼠标放到按钮上时,会显示提示框。单击返回可以返回主界面。重要代码:(1) 提示显示 a.setToolTipText(进入图书管理界面); b.setToolTipText(
15、进入读者管理界面); c.setToolTipText(进入借阅管理界面);图: (2) 跳入别的页面 a1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e)if(e.getSource()=a1) new Demo2(); frame1.setVisible(false) ;);(其他选项类似)(3)用表格显示查询信息JTable table=null;DefaultTableModel tableModel=new DefaultTableModel();String titl
16、es=图书编号,类别,书名,出版社,作者,译者, 日期,单价; String a,b,c,d,h,f,g,i;tableModel.setColumnIdentifiers(titles);table=new JTable(tableModel);JScrollPane scr=new JScrollPane(table);frame.add(scr);scr.setBounds(90, 200, 400, 160);String sql=select * from tb_abc where tsbh= +tsbhText.getText().trim()+;ResultSet rs=st.e
17、xecuteQuery(sql); while(rs.next()=true) a=rs.getString(1); b=rs.getString(2); c=rs.getString(3); Vector rowData=new Vector(); rowData.add(a); rowData.add(b); rowData.add(c); tableModel.addRow(rowData);图:(4)删除信息:String sql = delete from tb_abc where tsbh=+tsbhText.getText()+and lb=+lbText.getText()+a
18、nd cbs=+cbsText.getText()+and cbrq=+ cbrqText.getText()+and zz=+zzText.getText()+and yz=+yzText.getText()+and dj=+djText.getText()+and sm=+smText.getText()+; int a= st.executeUpdate(sql);if(a0) infoLab.setText(删除成功!) ;st.close();图:(5)添加信息:if(tsbhText.getText().trim().equals() | lbText.getText().trim
19、().equals()|yzText.getText().trim().equals() | zzText.getText().trim().equals()|cbsText.getText().trim().equals() | cbrqText.getText().trim().equals()| smText.getText().trim().equals()|djText.getText().trim().equals() infoLab.setText(添加失败!) ; try st=Dao.conn.createStatement(); String sql=insert into
20、 tb_abc(tsbh,lb,sm,zz,cbs,yz,cbrq,dj) values(+ tsbhText.getText().trim() +,+lbText.getText().trim()+,+ smText.getText().trim() +,+ zzText.getText().trim() +,+cbsText.getText().trim() +, + yzText.getText().trim() +,+ cbrqText.getText().trim() +,+ djText.getText().trim() +); int a= st.executeUpdate(sq
21、l); if(a0) infoLab.setText(添加成功!) ;图:(6)消息框frame2.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) JOptionPane.showMessageDialog(null,离开图书管理系统);System.exit(1) ;);图:3.3数据库与Eclipse的连接import java.sql.Connection;import java.sql.DriverManager;classDao protected static String
22、 dbClassName = com.microsoft.jdbc.sqlserver.SQLServerDriver;protected static String dbUrl = jdbc:microsoft:sqlserver:/localhost:1433;+ DatabaseName=db_library;SelectMethod=Cursor;protected static String dbUser = sa;protected static String dbPwd = ;static Connection conn = null;public Dao() try if (c
23、onn = null) Class.forName(dbClassName).newInstance();conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd);elsereturn; catch (Exception ee) ee.printStackTrace();四、软件测试 软件测试成功,需要操作员准确读取数据库中的表中数据类型才能准确进行测试,测试结果允许有变差,在varchar和char之间可以转换运行。五、系统总结 总体来说,本次项目在规定期间顺利完成,图书管理系统能够完成图书添加、查询、删除,读者信息添加、查询、删除和借阅信息添加和查询的相应功能。六、系统设计心得体会在本次项目中设计中,Java在原来的基础上有了更深的了解和掌握,能够熟练的对程序进行添加和改写。也能把Java和数据库进行连接。此外还在老师讲解的基础上学会了举一反三,能够根据自己的需求适当的添加一些相关的代码。其次对开发环境eclipse在原有的基础上有了很深的了解。此外,在开发过程中,也得到了一些教训,必须对每句代码知道是什么意思,做到认真仔细。还需要不断地尝试新的内容。在不懂得地方要多查多看多问。