软件工程-学生宿舍管理系统.doc_第1页
软件工程-学生宿舍管理系统.doc_第2页
软件工程-学生宿舍管理系统.doc_第3页
软件工程-学生宿舍管理系统.doc_第4页
软件工程-学生宿舍管理系统.doc_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

I 36 三三级级实实践践课课题题设设计计任任务务书书 姓姓 名名 XXX 软件工程 java 方向 专业 103 班 题题 目目学生宿舍管理系统 设设 计计 任任 务务 开发一个比较完善的基于 java 语言的图书管理系统 内容包括登录 图书 读者 管理员注册等内容 为图书的管理提供了一个很好的综合查询服务平台 主要功能包括 1 登录 为管理员 读者的登录所用 另有会员注册功能 参与 2 图书管理系统主页 包括图书信息 会员信息 注册会员信息等 参与 3 图书 管理员信息界面 图书 会员信息的查询 删除 修改等 参与 开发工具 java MyEclipse MySQL Photoshop 时时 间间 进进 度度 项目进度 日 期 192021222324252627282912345678910 设 计 编 码 测 试 备注 xxx xxxx xxx 原原 主主 始始 要要 资资 参参 料料 考考 与与 文文 献献 01 Y Da niel Liang java 语言程序设计基础篇 进阶篇 机械工业出版社 02 刘勇 SQL Server2000 基础教程 M 清华大学出版社 指导教师签字 指导教师签字 2012 年年 03 月月 日日 I 36 课题题目 摘 要 随着计算机网络的飞速发展 Internet 技术越来越广泛的应用 网络覆盖的区域不断扩大 给现代宿舍管理应用带来了蓬勃发展的机遇 在现代学生宿舍管理中 网上修改学生信 息成为不可缺少的现代工具 本文详细的论述了学生宿舍管理系统设计和实现的全过程 在论述过程中 主要分五大 部分 第一部分主要包括绪论 相关背景和构架和对开发工具进行了相应的介绍 第二 部分是对系统需求分析及各环节的需求分析 第三部分是对学生宿舍管理系统功能的分 析和详细设计 该部分是本文的主体 在这一部分 介绍了本系统设计方案的实现过程 经过论证得到系统模块功能并设计数据库 针对本系统的详细设计并以学生信息管理和 订单管理模块为例进行详细分析 第五部分是系统的实现和测试 本文通过对以上五部 分的论述 使学生宿舍管理系统各功能基本完成 关键词 学生宿舍管理 数据库 Java I 36 目 录 摘摘 要要 I 第第 1 章章 项目分析项目分析 1 1 1 功能描述 1 1 2 技术分析 1 1 2 1 工程计划进度 1 1 2 2 标题 1 1 3 标题 2 第第 2 章章 系统分析与设计系统分析与设计 2 2 1 系统分析 2 2 2 参与者 3 2 3 系统设计 3 2 4 类图 3 2 5 系统体系结构设计 4 2 6 数据库设计 5 第第 3 章章 功能实现与测试功能实现与测试 6 3 1 登陆界面登陆界面 6 3 2 主界面 6 3 3 添加界面 7 3 4 删除界面 7 3 5 修改界面 8 3 6 查询功能 8 第第 4 章章 数据库数据库 9 4 1 管理员数据库信息表截图管理员数据库信息表截图 10 4 2 学生信息数据库截图 10 4 3 数据库列表 11 第第 5 章章 结束语结束语 11 指导教师评指导教师评语语 13 附录附录 A 附加图 表附加图 表 15 附录附录 B 主要源程序主要源程序 20 1 36 第 1 章 项目分析 1 1 功能描述 设计一个计算机程序 实现对宿舍的宿舍号 宿舍人员等的管理 学生宿舍管理系统 通过制作简单的管理系统 可以实现添加 查询 删除 修改等功能 1 2 技术分析 登录功能 管理员登录 学生宿舍管理系统 对宿舍进行管理 如没有管理员帐号则不 能修改任何信息 添加功能 添加数据信息 当有新同学进入是可以添加该同学的信息 通过文本框读入 添加信息 连接数据库后储存数据 精确查询 输入要查询同学的学号 显示出该同学的信息 通过文本框读入要查找的信 息 用 SQL 语句在数据库中进行查找 删除功能 该功能和精确查询功能在同一功能模块中实现 有于删除同学信息并更新数 据库信息 修改功能 当同学的信息改变时 用此功能更新同学信息 通过对数据库信息的更新保 存最新信息 1 2 1 工程计划进度 03 20 03 26 分析问题 整理资料 03 27 03 04 编写代码 测试程序 03 05 03 11 填写模板 整理文档 第 2 章 系统分析与设计 系统总体结构分析根据实际情况 以少量代码快速地构造一个可执行的软件系统模 型 使用户和开发人员可以较快的确定需求 2 36 2 1 系统分析 学生宿舍管理系统 主要是实现学生信息的建立 删除 查询 插入及删除等操 作功能 默认只能管理员使用系统对学生信息进行增删改查 2 2 参与者 管理员 2 3 系统设计 学生宿舍管理系统 的功能是管理自己的学生宿舍信息 要求能对通讯录中记录 信息进行增加 删除 编辑操作 分析通讯录管理系统的数据库结构 包括需要几 张表 需要那些字段 建立项目文件 在项目中建立数据库 建立表 适当输入记 录 确定表间的关系 针对自己建立的数据库练习查询 2 4 类图 Add 姓名 手机号码 家 庭电话 办公电话 JTextArea 开始修改 录入修改 重置 JBotton Update actionPerformed Action Event e void Student id int Sname String Sno String get void set void Query 姓名 手机号码 家 庭电话 办公电话 JTextArea 查询 删除 JBotton Find JFrame f WindowClosing Wind owEvent e void WindowClosing Wind owEvent e void Delete a b c JLabel About JFrame f WindowClosing Wind owEvent e void Modify ruslt JTextArea 查询 JBotton name String sql String Ztcx actionPerformed Ac tionEvent e void 3 36 2 5 系统体系结构设计 学生数据库 查询 修改 删除 添加 字段名数据类型是否为空是否为主键默认值 账号Int 11 否是NULL 姓名VarChar 255 否否NULL 宿舍号VarChar 255 否否NULL StudentDao 姓名 手机号码 家 庭电话 办公电话 JTextArea 确定 重置 JBotton Tianjia actionPerformed Actio nEvent e void AccountDao 姓名 手机号码 家 庭电话 办公电话 JTextArea 确定 重置 JBotton Tianjia actionPerformed Actio nEvent e void Account ruslt JTextArea tj JTextField 查询 JBotton name sql String p JLabel mhcx actionPerformed A ctionEvent e void 4 36 2 6 数据库设计 学生信息表 学生信息表 管理员信息表 管理员信息表 字段名数据类型是否为空是否为主键默认值 账号Int 11 否是NULL 密码VarChar 255 否否NULL 字段名数据类型是否为空是否为主键默认值 账号Int 11 否是NULL 姓名VarChar 255 否否NULL 宿舍号VarChar 255 否否NULL 5 36 第 3 章 功能实现与测试 3 1 登陆界面 管理员通过此界面登录到宿舍管理系统 可以注册新的用户 3 2 主界面 6 36 管理员可对信息进行添加 删除 修改 也可以进行查询操作 3 3 添加界面 添加功能 可以添加新的学生信息 点击 录入 按钮录入学生信息 3 4 删除界面 因为学生的学号是唯一的 所以管理员可以通过学号删除学生的信息 7 36 3 5 修改界面 管理员可通过删除功能删除学生的信息 3 6 查询功能 因为学生的学号是唯一的 所以管理员可以通过学号查询的信息 8 36 第 4 章 数据库 对数据库整体的布局与分析 9 36 4 1 管理员数据库信息表截图 4 2 学生信息数据库截图 10 36 4 3 数据库列表 第 5 章 结束语 经过将近三个星期努力终于完成了这次 JAVA 课程设计 基本能够掌握 JAVA 应用系统 开发技术 真是工夫没白下 通过学习 JAVA 系统开发使我对 ECLIPSE 这个开发工具有 了深入的了解 在没有做课程设计以前觉得课程设计只是对这门课程所学知识的单纯总结 但是通过这 次做课程设计发现自己的看法有点太片面 课程设计不仅是对前面所学知识的一种检验 而且也是对自己能力的一种提高 通过这次课程设计使我明白了自己原来知识还比较欠 缺 自己要学习的东西还太多 学习是一个长期积累的过程 在以后的工作 生活中都 应该不断的学习 努力提高自己知识和综合素质 在这次课程设计中也使我们的同学关系更进一步了 同学之间互相帮助 有什么不懂的 大家在一起商量 听听不同的看法对我们更好的理解知识 所以在这里非常感谢帮助我 的同学 在这次课程设计中界面设计 多数控件的设置 部分代码的编写还可以 因为很多控件 的属性及用法在平时的学习中已早就有所掌握 所遇到的最大难题是数据库的编辑和链 接及其代码的编写 在通讯录用到数据库是为了方便通讯录的添加 查询 修改和删除 因我们原本对数据库的了解就甚少 但编程的继续不得不使我们对这些知识有一定程度 11 36 了认识 为了完善通讯录功能我们走进图书馆 翻阅了大量关于数据库的资料 不能说 已经通悟了数据库 但是对数据库中的一些基本知识还是有所了解的 总之 不管学会 的还是学不会的的确觉得困难比较多 真是万事开头难 不知道如何入手 最后终于做 完了有种如释重负的感觉 此外 还得出一个结论 知识必须通过应用才能实现其价值 有些东西以为学会了 但真正到用的时候才发现是两回事 所以我认为只有到真正会用 的时候才是真的学会了 在设计过程中 我通过查阅大量有关资料 与同学交流经验和自学 等方式 使自己学 到了不少知识 也经历了不少艰辛 但收获同样巨大 在整个设计中我懂得了许多东西 也培养了我独立工作的能力 树立了对自己工作能力的信心 相信会对今后的学习工作 生活有非常重要的影响 而且大大提高了动手的能力 使我充分体会到了在创造过程中 探索的艰难和成功时的喜悦 虽然这个通讯录设计做的也不太好 但是在设计过程中所 学到的东西是这次课程设计的最大收获和财富 使我终身受益 参考文献 1 陈家祺 运动图像处理在车型识别中的应用 J 汽车工程 1998 20 6 343 346 2 陈家祺 C 程序设计教程 M 北京 新华出版社 1999 11 3 Shihang S Fuzzy self organizing controller and its application for dynamic processes J Fuzzy Sets and Systems 1998 26 151 164 4 Kaare Christian Borland C Techniques import java awt event import javax swing import java sql import java util Calendar public class Index extends JFrame implements ActionListener Calendar date Calendar getInstance private Account account new Account private Jdbc ut new Jdbc private JMenuBar jmb new JMenuBar private JMenu JM1 new JMenu 操作 private JMenuItem JMT1 new JMenuItem 登录 private JMenuItem JMT2 new JMenuItem 注册 private JMenuItem JMT3 new JMenuItem 退出 private JLabel jla title new JLabel 宿舍管理系统 SwingConstants CENTER private JLabel jla ac new JLabel 帐 号 private JLabel jla pass new JLabel 密 码 private JLabel jla panel new JLabel private JButton jbu zhu new JButton 注册 private JButton jbu land new JButton 登录 private JButton jbu over new JButton 退出 static JTextField jtf id new JTextField private JPasswordField jtf pass new JPasswordField public Index setBak 调用背景方法 20 36 Container c getContentPane 获取 JFrame 面板 jla panel setOpaque false 把 JPanel 设置为透明 这样就不会遮住后面的背景 这样你就能在 JPanel 随意加组件了 c add jla panel this addListener initialFrame 初始化界面 setJMenuBar jmb jmb add JM1 JM1 add JMT1 JM1 add JMT2 JM1 add JMT3 public void addListener JMT1 addActionListener this JMT2 addActionListener this JMT3 addActionListener this jbu zhu addActionListener this jbu land addActionListener this jbu over addActionListener this public void initialFrame int day date get Calendar DAY OF MONTH int month date get Calendar MONTH 1 int year date get Calendar YEAR JLabel jla date new JLabel 当前时间是 year 年 month 月 day 月 jla date setForeground Color BLUE jla date setBackground Color YELLOW 设为空布局 jla panel setLayout null 将控件添加到容器相应位置 jla title setBounds 20 20 250 40 jla panel add jla title jla ac setBounds 30 100 110 25 jla panel add jla ac jtf id setBounds 120 100 130 25 21 36 jla panel add jtf id jla pass setBounds 30 140 110 25 jla panel add jla pass jtf pass setBounds 120 140 130 25 jla panel add jtf pass jbu zhu setBounds 50 210 60 30 jla panel add jbu zhu jbu land setBounds 120 210 60 30 jla panel add jbu land jbu over setBounds 190 210 60 30 jla panel add jbu over add jla panel add jla date BorderLayout SOUTH setVisible true this setTitle 登录宿舍管理系统 Dimension screenSize Toolkit getDefaultToolkit getScreenSize int centerX screenSize width 2 int centerY screenSize height 2 int w 500 本窗体宽度 int h 330 本窗体高度 this setBounds centerX w 2 centerY h 2 100 w h 设置窗体出现在屏幕中央 this setVisible true 将填写姓名的文本框设为默认焦点 public void actionPerformed ActionEvent e if e getSource jbu land e getSource JMT1 try if jtf id getText equals JOptionPane showMessageDialog null 请输入 ID else if jtf pass getText equals JOptionPane showMessageDialog null 请输入密码 else if jtf id getText equals else 22 36 java sql Connection con ut getConnection PreparedStatement ps con prepareStatement select from account where id ps setInt 1 Integer parseInt jtf id getText ResultSet rs ps executeQuery rs next int id true rs getInt 1 int pass true rs getInt 2 if pass true Integer parseInt jtf pass getText zhujiemian zhu new zhujiemian zhu setVisible true else if pass true Integer parseInt jtf pass getText JOptionPane showMessageDialog null 登陆失败 ut close con ps rs catch Exception e1 JOptionPane showMessageDialog null 用户不存在 请注册新用户 else if e getSource jbu zhu e getSource JMT2 AccountDao rdao new AccountDao account setId Integer parseInt jtf id getText account setPassword jtf pass getText JOptionPane showMessageDialog null 注册成功 rdao ZC account else if e getSource jbu over e getSource JMT3 System exit 0 public void setBak JPanel this getContentPane setOpaque false ImageIcon img new ImageIcon c 2 jpg 添加图片 JLabel background new JLabel img this getLayeredPane add background new Integer Integer MIN VALUE background setBounds 0 0 img getIconWidth img getIconHeight public static void main String args Index frame new Index 23 36 frame setTitle 宿舍管理系统 frame setDefaultCloseOperation JFrame EXIT ON CLOSE frame setVisible true 2 主界面源代码 import java awt import java awt event import javax swing public class zhujiemian extends JFrame implements ActionListener private JLabel jla panel new JLabel private JMenuBar jmb new JMenuBar private JMenu JM1 new JMenu 操作 private JMenuItem JMT1 new JMenuItem 增加 private JMenuItem JMT2 new JMenuItem 删除 private JMenuItem JMT3 new JMenuItem 修改 private JMenuItem JMT4 new JMenuItem 查询 private JLabel JL new JLabel private Container contrainer getContentPane public zhujiemian super 欢迎进入学生宿舍管理系统操作界面 setJMenuBar jmb jmb add JM1 JM1 add JMT1 JM1 add JMT2 JM1 add JMT3 JM1 add JMT4 setBak 调用背景方法 Container c getContentPane 获取 JFrame 面板 jla panel setOpaque false 把 JPanel 设置为透明 这样就不会遮住后面的背景 这 24 36 样你就能在 JPanel 随意加组件了 c add jla panel this setSize 500 400 this setDefaultCloseOperation JFrame EXIT ON CLOSE JMT1 addActionListener this JMT2 addActionListener this JMT3 addActionListener this JMT4 addActionListener this public void setBak JPanel this getContentPane setOpaque false ImageIcon img new ImageIcon c 1 jpg 添加图片 JLabel background new JLabel img this getLayeredPane add background new Integer Integer MIN VALUE background setBounds 0 0 img getIconWidth img getIconHeight public void actionPerformed ActionEvent e if e getSource JMT1 new Add setVisible true else if e getSource JMT2 new Delete setVisible true else if e getSource JMT3 new Modify setVisible true else if e getSource JMT4 new Query setVisible true 3 增加界面源代码 import javax swing import java awt 25 36 import java awt event ActionEvent import java awt event ActionListener public class Add extends JFrame implements ActionListener private StudentDao rdao new StudentDao private JLabel JL1 new JLabel private JTextField JT1 new JTextField private JLabel JL2 new JLabel private JTextField JT2 new JTextField private JLabel JL3 new JLabel private JTextField JT3 new JTextField private JButton JB new JButton 录入 public Add this setDefaultCloseOperation JFrame EXIT ON CLOSE JDialog dialog new JDialog this 创建当前窗体的对话框 dialog setModal true 设置对话框为模态 dialog setSize 500 400 设置对话框大小 dialog setLocationByPlatform true 由系统平台布置窗体位置 dialog setTitle 请输入要增加学生的信息 对话框标题 dialog setLocation 100 100 Font myFont1 new Font 宋体 Font BOLD 20 dialog setLayout null JL1 setText 输入学号 JL1 setFont myFont1 JL1 setBounds 100 50 100 50 dialog add JL1 JT1 setBounds 200 50 200 40 dialog add JT1 JL2 setText 输入姓名 JL2 setFont myFont1 JL2 setBounds 100 100 110 50 dialog add JL2 JT2 setBounds 200 100 200 40 dialog add JT2 JL3 setText 输入宿舍号 JL3 setFont myFont1 JL3 setBounds 80 150 150 50 dialog add JL3 26 36 JT3 setBounds 200 150 200 40 dialog add JT3 JB setBounds 200 250 100 50 dialog add JB JB addActionListener this dialog setVisible true 显示对话框 public void actionPerformed ActionEvent e Student student new Student student setId Integer parseInt JT1 getText student setSname JT2 getText student setSno JT3 getText rdao add student 3 删除界面源代码 import java awt import java awt event ActionEvent import java awt event ActionListener import javax swing public class Delete extends JFrame implements ActionListener private StudentDao rdao new StudentDao private JLabel JL1 new JLabel 请输入要删除的学生的学号 private JTextField JT1 new JTextField private JButton JB new JButton 删除 public Delete JDialog dialog new JDialog this 创建当前窗体的对话框 27 36 dialog setModal true 设置对话框为模态 dialog setSize 500 400 设置对话框大小 dialog setLocationByPlatform true 由系统平台布置窗体位置 dialog setTitle 请输入要删除学生的学号 对话框标题 dialog setLocation 100 100 Font myFont1 new Font 宋体 Font BOLD 20 dialog setLayout null JL1 setText 输入要删除学生的学号 JL1 setFont myFont1 JL1 setBounds 0 50 300 50 dialog add JL1 JT1 setBounds 250 50 150 40 dialog add JT1 JB setBounds 200 250 100 50 dialog add JB this setDefaultCloseOperation JFrame EXIT ON CLOSE JB addActionListener this dialog setVisible true 显示对话框 public void actionPerformed ActionEvent e int id Integer parseInt JT1 getText rdao delete id 4 修改界面源代码 import java awt import java awt event ActionEvent import java awt event ActionListener import javax swing public class Modify extends JFrame implements ActionListener private StudentDao rdao new StudentDao private JLabel JL1 new JLabel private JLabel JL2 new JLabel 28 36 private JLabel JL3 new JLabel private JLabel JL4 new JLabel private JTextField JT1 new JTextField private JTextField JT2 new JTextField private JTextField JT3 new JTextField JButton JB new JButton 修改 public Modify JDialog dialog new JDialog this 创建当前窗体的对话框 dialog setModal true 设置对话框为模态 dialog setSize 500 400 设置对话框大小 dialog setLocationByPlatform true 由系统平台布置窗体位置 dialog setTitle 请修改学生宿舍信息 对话框标题 dialog setLocation 100 100 Font myFont1 new Font 宋体 Font BOLD 20 dialog setLayout null JL1 setText 修改学生宿舍信息 JL1 setFont myFont1 JL1 setBounds 150 20 250 50 dialog add JL1 JL2 setText 输入学生的学号 JL2 setFont myFont1 JL2 setBounds 50 100 250 50 dialog add JL2 JT1 setBounds 200 100 200 40 dialog add JT1 JL3 setText 输入学生姓名 JL3 setFont myFont1 JL3 setBounds 60 150 150 50 dialog add JL3 JT2 setBounds 200 150 200 40 dialog add JT2 JL4 setText 输入学生宿舍号 JL4 setFont myFont1 JL4 setBounds 50 200 150 50 dialog add JL4 JT3 setBounds 200 200 200 40 dialog add JT3 JB setBounds 200 250 100 50 29 36 dialog add JB this setDefaultCloseOperation JFrame EXIT ON CLOSE JB addActionListener this dialog setVisible true 显示对话框 public void actionPerformed ActionEvent e Student student new Student student setId Integer parseInt JT1 getText student setSname JT2 getText student setSno JT3 getText rdao modify student 5 查询界面源代码 import java awt Color import java awt Container import java awt Font import java awt GridLayout import java awt event ActionEvent import java awt event ActionListener import javax swing public class Query extends JFrame implements ActionListener private StudentDao rdao new StudentDao private JLabel JL new JLabel private JLabel JL1 new JLabel private JLabel JL2 new JLabel private JLabel JL3 new JLabel private JTextField JT new JTextField 10 private JTextField JT1 new JTextField 10 private JTextField JT2 new JTextField 10 30 36 private JTextField JT3 new JTextField 10 private JButton JB new JButton 查询 public Query JDialog dialog new JDialog this 创建当前窗体的对话框 dialog setModal true 设置对话框为模态 dialog setSize 500 400 设置对话框大小 dialog setLocationByPlatform true 由系统平台布置窗体位置 dialog setTitle 请输入要查询学生的学号 对话框标题 dialog setLocation 100 100 Font myFont1 new Font 宋体 Font BOLD 20 dialog setLayout null JL setText 输入要查询的学生的学号 JL setFont myFont1 JL setBounds 0 50 300 50 dialog add JL JT setBounds 250 50 150 40 dialog add JT JL1 setText 该学生的学号 J

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论