Java实验报告(房屋销售管理信息系统的设计与实现).doc_第1页
Java实验报告(房屋销售管理信息系统的设计与实现).doc_第2页
Java实验报告(房屋销售管理信息系统的设计与实现).doc_第3页
Java实验报告(房屋销售管理信息系统的设计与实现).doc_第4页
Java实验报告(房屋销售管理信息系统的设计与实现).doc_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

.图书管理信息系统的设计与实现 课程设计(项目设计)说明书 项目名称:房屋销售管理信息系统的设计与实现 专业班级: 学 号: 姓 名: 指导教师: 完成时间: 2013.07.06 目录引言1 系统分析与设计.1 1.1 系统目标.2 1.2 系统模块分析.21.3 总体设计.31.4 类的设计.41.5 系统知识点.42 系统实现.72.1 主窗口功能实现.72.2 录入.82.3 查询.10 2.4 修改.112.5 删除.123 系统测试(截图).134 收获与体会.185 参考文献.186 附录.18 房屋销售管理信息系统的设计与实现 引言1.Java用户界面概述图形用户界面(Graphics User Interface,缩写GUI)是指以图形的显示方式与用户实现交互操作的应用程序界面,设计具有GUI特征的应用程序被称为GUI应用程序设计。Java提供了十分完善的图形用户界面功能,使得软件开发人员可以轻松地开发出功能强大、界面友善、安全可靠的应用程序,充分体现了Java语言的时代感与面向对象程序设计的优越性。在Java语言中,为GUI应用程序设计提供了强大的功能,其相关的类主要封装在两包(java.awt和javax.swing)中,其中包含了实现图形用户界面的所有基本元素,这些基本元素主要包括容器、组件、绘图工具与布局管理器等。组件是与用户实现交互操作的部件,容器是包容组件的部件,布局管理器是管理组件在容器中布局的部件,绘图工具是绘制图形的部件。Java.awt是javal.l用来建立GUI的图形包,这里的“awt”是抽象窗口工具包。 JAVA设计用户界面需要以下四个基本步骤:(1)创建和设置组件;(2)将组件加入到容器中;(3)布局组件;(4)处理有组件产生的事件。 当今时代是飞速发展的信息时代,在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。管理信息系统是进行信息的采集、存储、加工、维护和使用的系统,它是随着管理科学和技术科学的发展而形成的。在学习的Java语言后,我使用Java语言编写了一个简单的房屋销售管理信息系统,可以实现简单的录入、查询、修改、删除和显示信息的功能。151 系统分析与设计1.1 系统目标 该程序是一个图形界面的简单的房屋销售管理信息系统,其实现的功能主要有:(1)录入房屋基本信息,信息包括有:房屋号、销售者姓名、中介职工姓名、房屋销售价格;(2)查询房屋基本信息;(3)修改房屋基本信息;(4)删除房屋基本信息;(5)显示房屋基本信息:计算超过200万的房屋总数,并输出这些房屋的详细信息。 房屋销售管理信息系统功能总框图:房屋销售管理信息系统显示房屋基本信息图书基本信息修改房屋基本信息删除房屋基本信息图书基本信息查询房屋基本信息录入房屋基本信息 1.2 系统模块分析1. 欢迎语主模块欢迎语主模块是本系统的主要窗口,在菜单条里有一个菜单,其子菜单有6个菜单项,包括有录入房屋信息、查询房屋信息、修改房屋信息、删除房屋信息、显示房屋信息、退出系统。2. 录入房屋信息模块 录入房屋信息界面包括:房屋号、售房者姓名、中介职工姓名、房屋销售价格四个文本框,和“录入”、“重置”两个按钮,实现对房屋信息的录入。输入完信息之后,点击录入,会显示确认框,确认基本信息是否将要被录入。3. 查询房屋信息模块 查询房屋信息窗口是一个独立窗口,显示在主窗口上面。查询方式是:在“输入要查询的房屋号:”的文本框内输入房屋号,然后点击“查询”按钮,然后就会在售房者姓名、中介职工姓名、房屋销售价格三个文本框内显示出所要查询的信息。4. 修改房屋信息模块 修改房屋信息界面包括输入要修改的编号、(新)售房者姓名、(新)中介职工姓名和(新)房屋销售价格四个文本框,和“开始修改”、“录入修改”和“重置”三个按钮。当输入要修改的编号后,点击按钮“开始修改”则会显示出要修改的房屋的基本信息,当你重新输入新信息之后,点击“录入修改”按钮会弹出确认录入修改的确认窗口。5. 显示房屋信息模块 显示房屋信息界面会显示出价格超过200万的房屋总数和这些房屋的基本信息。6. 删除房屋信息模块 删除房屋信息界面和查询房屋信息界面基本一致,删除式是:在“输入要删除的房屋号:”的文本框内输入房屋号,然后点击“删除”按钮,然后就会在售房者姓名、中介职工姓名、房屋销售价格三个文本框内显示出所要删除的房屋基本信息,并一并弹出确认删除的窗口。各模块之间的调用关系如下: 欢迎语主模块 录入房屋信息模块 查询房屋信息模块 修改房屋信息模块 删除房屋信息模块 显示房屋信息模块1.3总体设计 首先将录入信息、查询信息、修改信息、删除信息和显示信息五个功能分别为五个类来实现,每一个累都继承了主窗口类JFRAME,使得窗口可以独自运行。主界面设计 功能组件:6个菜单项、1个面板 功能实现:录入信息、查询信息、删除信息、修改信息、显示信息 实现过程:对菜单项添加监控,共有6个监控事件,实现菜单项事件为创建对应功能的类对象,实现相应的功能窗口。1.4类的设计 本程序设计了5个类,分别是录入类、修改类、查询类、删除类和存放房屋信息的对象类。各类的主要作用如下:1. HouseManager.java 该文件的类负责创建房屋销售管理信息系统的主窗口,该类包含main方法,程序从该类考试执行。2. ModifySituation 该类的文件负责创建房屋销售管理信息系统的修改界面。3. Delete 该类的文件负责创建房屋销售管理信息系统的删除界面。4. House 该类的文件负责创建房屋销售管理信息系统的存放房屋信息的对象。5. HouseSituation 该类的文件负责创建房屋销售管理信息系统的录入界面。6. Inquest 该类的文件负责创建房屋销售管理信息系统的查询界面。1.5 系统知识点在程序中需要使用的包: import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; import java.util.Hashtable; import java.util.Iterator; import java.awt.event.KeyEvent;外层窗口类: JFrame 类是Java类库提供的顶层窗口类,定义了其子类的时候根据需要给予相应的设置或者重新定义,在外层窗口类中可以设置窗口的大小 setSize(x,x);窗口是否可见setVisible( );窗口是否可以调节setResizable(x);设置窗口标题栏显示的内容setTitle();设置在桌面上显示的位置setLocation(x,y)。面板容器类: JLable 显示结果标签; Jpanel 面板容器用来放置一些组件; CardLayout( ) 创建CardLayout对象作为布局; 创建按钮Button并使用add()方法加入面板中并为其注册监视器; ActionListener 监视类接口,当单机按钮或者功能键后,系统将调用下面的两个成员方法: InsertAction内部类,其中定义了成员方法actionPerformed(ActionEvent)进行监视,实现拼接信息功能; CommandAction内部类,其中定义了成员方法actionPerformed(ActionEvent)监视一些功能按钮,实现显示信息的功能;组件类: JTextField 创建文本框,允许用户在文本框中输入单行文本; JTextArea 创建文本区,允许用户在文本区中输入多行文本; Jbutton 创建按钮,允许用户单击按钮; Jlabel 创建标签,标签为用户提供提示信息;简要的设计流程创建窗口修改按钮事件处理对各个按钮添加事件监视器ActionListener以及事件处理调试修改程序,完成模拟房屋销售功能完成java源代码编写查询按钮事件处理删除按钮事件处理重置按钮事件处理录入按钮事件处理功能按钮输出显示区域构造房屋销售界面2 系统实现2.1 主窗口功能实现(附上主要代码)/HouseManager.java 创建主窗口public class HouseManager extends JFrame implements ActionListenerpublic HouseManager() /HouseManager的构造函数fileMenu.addSeparator(); /在菜单之间增加分隔线card=new CardLayout(); /创建布局con=getContentPane(); /创建容器pCenter=new JPanel(); pCenter.setLayout(card); /为容器添加面板file=new File(房屋基本信息.txt);public void actionPerformed(ActionEvent e)if(e.getSource()=录入)card.show(pCenter,录入界面);else if(e.getSource()=修改)card.show(pCenter,修改界面);else if(e.getSource()=查询)/基本信息查询窗口设置为独立窗口,以便于用户进行查询。房屋信息查询.setVisible(true);else if(e.getSource()=删除)card.show(pCenter,删除界面); else if(e.getSource()=退出) System.exit(0); 2.2录入功能的实现(附上最要代码)/HouseSituation.javapublic class HouseSituation extends JPanel implements ActionListenerpublic HouseSituation(File file)JPanel pCenter=new JPanel();pCenter.add(boxH);setLayout(new BorderLayout();add(pCenter,BorderLayout.CENTER);JPanel pSouth=new JPanel();pSouth.add(录入);pSouth.add(重置);add(pSouth,BorderLayout.SOUTH);validate();public void actionPerformed(ActionEvent e)tryinOne=new FileInputStream(file);inTwo=new ObjectInputStream(inOne);房屋信息表=(Hashtable)inTwo.readObject();inOne.close();inTwo.close();catch(Exception ee)if(房屋信息表.containsKey(number)String warning=该教师基本信息已存在,请到修改界面修改!;JOptionPane.showMessageDialog(this,warning,警告,JOptionPane.INFORMATION_MESSAGE);if(ok=JOptionPane.YES_OPTION)String name1=售房者姓名.getText();String name2=中介职工姓名.getText();String money=房屋销售价格.getText();房屋=new House();房屋.setNumber(number);房屋.setName1(name1);房屋.setName2(name2);房屋.setMoney(money);tryoutOne=new FileOutputStream(file);outTwo=new ObjectOutputStream(outOne);房屋信息表.put(number,房屋);outTwo.writeObject(房屋信息表);outTwo.close();outOne.close();房屋号.setText(null);售房者姓名.setText(null);中介职工姓名.setText(null);房屋销售价格.setText(null);catch(Exception ee)System.out.println(ee);2.3 查询功能的实现(附上主要代码)/Inquest.javapublic class Inquest extends JDialog implements ActionListenerHashtable 房屋信息表=null;/存放房屋基本信息的散列表。JTextField 房屋号,售房者姓名,中介职工姓名,房屋销售价格;/显示房屋基本的文本条。JButton 查询;ButtonGroup group=null;FileInputStream inOne=null;ObjectInputStream inTwo=null;File file=null;/存放散列表的文件。public Inquest(JFrame f,File file)super(f,查询对话框,false);/创建无模式对话框。this.file=file;./boxH.add(Box.createVerticalGlue();JPanel pCenter=new JPanel();pCenter.add(boxH);Container con=getContentPane();con.add(pCenter,BorderLayout.CENTER);con.validate();setVisible(false);setBounds(100,200,360,270);addWindowListener(new WindowAdapter()2.4 修改功能的实现(附上主要代码)/ModifySituation.javapublic class ModifySituation extends JPanel implements ActionListenerHashtable 房屋信息表=null;/存放房屋基本信息的散列条。JTextField 房屋号,售房者姓名,中介职工姓名,房屋销售价格;/输入房屋基本信息的文本条。JButton 开始修改,录入修改,重置;FileInputStream inOne=null;ObjectInputStream inTwo=null;FileOutputStream outOne=null;ObjectOutputStream outTwo=null;File file=null;/存放散列条的文件public ModifySituation(File file)Box box1=Box.createHorizontalBox(); /创建5个水平Box容器,从左到右排列组件Box boxH=Box.createVerticalBox(); /创建一个垂直Box容器,在其中自上向下排列里一个水平Box容器boxH.add(box1);boxH.add(box2);boxH.add(box3);boxH.add(box4);boxH.add(Box.createVerticalGlue(); /使得垂直Box容器内的组件靠上对齐inTwo=new ObjectInputStream(inOne);/首现到文件中读取Hashtable对象。房屋信息表=(Hashtable)inTwo.readObject();/首先在文件中读取hashtable对象。String question=该房屋基本信息已存在,您想修改它的基本信息吗?;JOptionPane.showMessageDialog(this,question,警告,JOptionPane.QUESTION_MESSAGE); /弹出确认对话框。2.5 删除功能的实现(附上主要代码)/Delete.javapublic class Delete extends JPanel implements ActionListenerHashtable 房屋信息表=null;/存放房屋基本信息的散列表JTextField 房屋号,售房者姓名,中介职工姓名,房屋销售价格;/显示房屋基本信息的文本条JButton 删除;FileInputStream inOne=null;ObjectInputStream inTwo=null;FileOutputStream outOne=null;ObjectOutputStream outTwo=null;File file=null;public Delete(File file) else /如果不存在该房屋信息,弹出警告对话框。 String warning=该房屋号不存在!; JOptionPane.showMessageDialog(this,warning,警告,JOptionPane.WARNING_MESSAGE); else /如果输入房屋号是空的,弹出警告对话框。 String warning=必须输入房屋号!; JOpti

温馨提示

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

评论

0/150

提交评论