java课程设计(论文)电话薄.doc

上传人:文库蛋蛋多 文档编号:2387049 上传时间:2023-02-17 格式:DOC 页数:32 大小:355.50KB
返回 下载 相关 举报
java课程设计(论文)电话薄.doc_第1页
第1页 / 共32页
java课程设计(论文)电话薄.doc_第2页
第2页 / 共32页
java课程设计(论文)电话薄.doc_第3页
第3页 / 共32页
java课程设计(论文)电话薄.doc_第4页
第4页 / 共32页
java课程设计(论文)电话薄.doc_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《java课程设计(论文)电话薄.doc》由会员分享,可在线阅读,更多相关《java课程设计(论文)电话薄.doc(32页珍藏版)》请在三一办公上搜索。

1、摘 要系统主要功能包括:实现添加联系人的姓名和手机号码家庭电话号码和办公号码,并且连接进数据库,将信息储存进数据库文件中去,添加成功弹出添加成功的对话框,对话框中的信息可以重置。消息对话框负责显示消息,调用其静态方法显示警告信息。要求在文本框中显示姓名,手机号码,家庭电话,办公电话等用户信息。添加姓名,手机号码,家庭电话,办公电话等信息到数据库中,同样需要连接SQLSERVER2000数据库,用户的图形界面要求在文本框中显示姓名,手机号码,家庭电话,办公电话等用户信息。修改姓名,手机号码,家庭电话,办公电话等信息到数据库中,同样需要连接SQLSERVER2000数据库,用户的图形界面要求在文本

2、框中显示姓名,手机号码,家庭电话,办公电话等用户信息。对已经存储的信息进行查询,而客户的具体需求多样,为了给客户营造更多的便利,可以将软件的查询细分为按整体进行查询模糊查询和精确查询和整体查询,模糊查询允许用户用较为模糊的查询条件,比如信息的姓来进行查询。实现了满足用户需求的多样化。对已经存储的信息进行查询,而客户的具体需求多样,为了给客户营造更多的便利,可以将软件的查询细分为按整体进行查询模糊查询和精确查询和整体查询,整体查询允许用户用整体的查询条件,比如信息的姓来进行查询。实现了满足用户需求的多样化。本论文内容主要是运用软件工程的知识,先进行系统需求分析,之后是系统概要设计,详细设计,并且

3、详细介绍了各个功能模块的具体实现和数据库的设计。关键字:Java语言,SQLSERVER2000,JVM,添加,删除,查询和排序目 录第一章 系统开发环境11.1 开发工具11.2应用环境2第二章 系统需求分析32.1需求分析32.2可行性分析3第三章 系统概要设计43.1设计目标43.2数据文件设计43.3系统权限划分43.4系统功能模块4第四章 系统详细设计64.1 数据文件的建立64.2对数据文件的访问64.3程序设计64.4 流程图74.5各功能界面截图7第五章 系统测试115.1测试的意义115.2联合测试115.3测试内容115.4测试结果11第六章 系统的维护和发展12参考文献3

4、0第一章 系统开发环境 1.1 开发工具1 Java语言的发展 Java语言的第一次出现时在1995。Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。另一方面,Java技术也不断更新。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以

5、在各种系统中运行。 Java分为三个体系JavaSE,JavaEE,JavaME。2 Java语言的特色l Java语言是简单的。Java没有算符过载、标题文件、预处理、指针运算、结构、联合、多维数组、模板及隐式类型变换。如果你知道一点C、C 或Pascal,你很快就会驾驭Java。 l Java语言面向对象的 。正如任何面向对象的语言一样,Java代码也按类组织。每个类定义一组规定对象行为的方法。一个类可以继承另一个类的行为。在类的根层次上,通常是类对象。 l Java语言是体系结构中立的 。Java语言对每种计算机都一样。比如,简单的类型都是不变的:整数总是32位,长整数总是64位。 3

6、Java语言的主要特性l 在Java的情况下,编程人员不必为内存管理操心。Java系统有一个叫做“无用单元收集器”的内置程序,它扫描内存,并自动释放那些不再使用的内存块。 l Java程序没有指针,而且象这样的字节代码程序强在类型上,所以在执行之前它可能验证Java程序。被验证的Java程序得以保证不突破Java语言的任何限制,而且可以安全地执行。Java字节代码验证被Web浏览器用来确保小程序不含病毒。 l Java比典型的脚本语言大为有效,但它比C慢20倍。这对大多数应用是可接受的。 1.2应用环境硬件环境 CPU主频在500MHZ以上,内存在128M以上运行环境 os(系统):windo

7、ws xp(32bit_sp2)或unix environment(编程环境):J2SE 数据库:Sqlserser2000 第二章 系统需求分析2.1需求分析系统主要功能包括:实现添加联系人的姓名和手机号码家庭电话号码和办公号码,并且连接进数据库,将信息储存进数据库文件中去,添加成功弹出添加成功的对话框,对话框中的信息可以重置。消息对话框负责显示消息,调用其静态方法显示警告信息。要求在文本框中显示姓名,手机号码,家庭电话,办公电话等用户信息。添加姓名,手机号码,家庭电话,办公电话等信息到数据库中,同样需要连接SQLSERVER2000数据库,用户的图形界面要求在文本框中显示姓名,手机号码,家

8、庭电话,办公电话等用户信息。修改姓名,手机号码,家庭电话,办公电话等信息到数据库中,同样需要连接SQLSERVER2000数据库,用户的图形界面要求在文本框中显示姓名,手机号码,家庭电话,办公电话等用户信息。对已经存储的信息进行查询,而客户的具体需求多样,为了给客户营造更多的便利,可以将软件的查询细分为按整体进行查询模糊查询和精确查询和整体查询,模糊查询允许用户用较为模糊的查询条件,比如信息的姓来进行查询。实现了满足用户需求的多样化。对已经存储的信息进行查询,而客户的具体需求多样,为了给客户营造更多的便利,可以将软件的查询细分为按整体进行查询模糊查询和精确查询和整体查询,整体查询允许用户用整体

9、的查询条件,比如信息的姓来进行查询。实现了满足用户需求的多样化。2.2可行性分析l 技术可行性根据系统功能、性能及实现系统的各项约束条件,现有的技术已较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。同时,考虑给予的开发期限也较为充裕,预计系统是可以在规定期限内完成开发。l 经济可行性估算新系统的成本效益分析,其中包括估计项目开发的成本,开发费用和今后的运行、维护费用,估计新系统将获得的效益,估算开发成本是否回高于项目预期的全部经费。并且,分析系统开发是否会对其它产品或利润带来一定影响。l 运行可行性新系统的研制和开发是充分得考虑用户对

10、系统的易于管理,管理者方便查询设备信息效率。从而能完全满足使用者的要求。第三章 系统概要设计3.1设计目标手机的信息管理无外乎添加联系人的姓名和手机号码,家庭电话号码和办公号码,删除相对应的信息,对已经存储的信息进行查询,而客户的具体需求多样,为了给客户营造更多的便利,可以将软件的查询细分为按整体进行查询,模糊查询和精确查询。 3.2数据文件设计经过对系统的具体分析,为满足系统的需要,设计如下的数据信息:l 为了统一处理数据,需要设计数据库文件,新建一个表用来存储数据,处理JSP页面提交的各种对数据库的操作。l 利用sqlserver2000建立一个数据库,在此数据库下建立一个diaoyou1

11、的表,设立一个主键是必须的,姓名,手机号码,家庭电话,办公电话,设置各字段的数据类型。3.3系统权限划分本系统只要使用者通过启动程序就可以使用,无需身份验证。3.4系统功能模块该系统共有五个主要模块:1、添加号码2、修改信息3、查询信息,按整体查询4、查询信息,按模糊查询5、查询信息,按姓名查询图3-1系统功能模块图图3-2系统功能模块图 第四章 系统详细设计4.1 数据文件的建立表4-1 数据文件表的规定姓名字符串手机号码字符串家庭电话字符串办公电话字符串4.2对数据文件的访问建立一个sqlserver的数据库,数据库名字为student。在这个数据库里面新建一个名为car的表,数据源名称为

12、sun,首先建立jdbc-odbc之间的桥接,再建立odbc与数据源之间的连接。JavaBean生成的字节码文件建立Bean对象,JSP提交的数据经过Bean对象中的SQL的语句,传送至数据库中,从而产生对数据库的操作。每一个功能对应着一个JavaBean模块。实现了一个对数据库的操作。4.3程序设计实现添加联系人的姓名和手机号码家庭电话号码和办公号码,并且连接进数据库,将信息储存进数据库文件中去,添加成功弹出添加成功的对话框,对话框中的信息可以重置。消息对话框负责显示消息,调用其静态方法显示警告信息。要求在文本框中显示姓名,手机号码,家庭电话,办公电话等用户信息。添加姓名,手机号码,家庭电话

13、,办公电话等信息到数据库中,同样需要连接SQLSERVER2000数据库,用户的图形界面要求在文本框中显示姓名,手机号码,家庭电话,办公电话等用户信息。修改姓名,手机号码,家庭电话,办公电话等信息到数据库中,同样需要连接SQLSERVER2000数据库,用户的图形界面要求在文本框中显示姓名,手机号码,家庭电话,办公电话等用户信息。对已经存储的信息进行查询,而客户的具体需求多样,为了给客户营造更多的便利,可以将软件的查询细分为按整体进行查询模糊查询和精确查询和整体查询,模糊查询允许用户用较为模糊的查询条件,比如信息的姓来进行查询。实现了满足用户需求的多样化。对已经存储的信息进行查询,而客户的具体

14、需求多样,为了给客户营造更多的便利,可以将软件的查询细分为按整体进行查询模糊查询和精确查询和整体查询,整体查询允许用户用整体的查询条件,比如信息的姓来进行查询。实现了满足用户需求的多样化。4.4 流程图图4-4-1系统流程图4.5各功能界面截图 运行JAVA程序中的manager文件,显示系统的主界面,如图三所示,主界面有进入其他子功能的按钮,选择相应的按钮便可进入相应的功能。 图1系统主界面添加号码功能如图2所示,根据提示输入要添加的信息,点击确定,将弹出提示框,确认是否添加。 图2添加信息时的界面 图3修改信息时的界面修改号码功能如图3所示,首先输入要修改的人姓名点击开始修改在下面的文本框

15、现实当前数据库内所存该人的信息,同时录入修改键变化为可点击在文本框内输入要修改的号码,点击录入修改系统将新信息录如数据库点击精确查询按钮将弹出查询对话框。图 4精确查询时的界面图 5 整体查询界面图 6 模糊查询界面整体查询如5所示将显示数据库中所存的所有号码信息。模糊查询如图6所示,在文本框中填写姓名的一个字便可查询所有姓名中含有这个字的电话信息并显示在文本域内。第五章 系统测试5.1测试的意义系统测试是管理信息系统的开发周期中的一个十分重要环节。尽管在系统开发周期的各个阶段均采取了严格的技术审查,但依然难免会留下错误,如果没有在投入运行前的系统测试阶段被发现并纠正,问题迟早会在运行中暴露出

16、来,到那时要纠正错误将会付出更大的代价。5.2联合测试为了提高测试工作的质量,在测试过程中,注意了以下几点: 1.测试工作由程序员之外的其他人员来进行,这样会获得更好的测试效果。2.不仅要选择合理的输入数据作为测试用例,还要选用不合理的输入数据作为测试用例。3.除了检查程序是否做了应该做的工作之外,还检查程序是否做了它不因该做的事情。5.3测试内容 1.软件的正常运行、关闭及退出时保存记录的提示(默认为是)。2.登录界面友好,可操作性及安全性能较好,能对不同管理级别者进行限制,以保证数据库的安全。 3.数据文件的可维护性好,数据的录入、删除及更改均能顺利完成,并能实现动态更新。4.数据查询便捷

17、,能对各种不同的查询条件进行搜索,以找到最合适的答案。5.溢出、越界均能进行非法提示,以警告用户正确使用。对用户的非正常操作方式也提出警告。6.类型填写错误时,系统能够报错。7.对操作系统的兼容性良好,可移植性完好。5.4测试结果系统的测试采用黑盒测试的方法,经过反复测试,系统完成后运行添加、修改、查询、报表等功能均正常。第六章 系统的维护和发展根据系统目的确定突出什么内容,以及充实和更新内容的技术手段和形式。1、坚持自己的特色。 2、集中最多的信息。在自己的领域里,一定要最大限度地集中所有相关信息,采用各种办法搜集和展示系统丰富的内容。3、保持技术的先进。只要条件允许,一定要有技术力量对系统

18、进行技术改造和提高。4、掌握用户的需求。用户需求是放在第一位考虑的问题。其中,参与是用户最重要的需求。系统是否满足用户的需求,其参与程度是一个主要标志。附 录import java.sql.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.*;public class find extends JDialog implements ActionListenerJTextField 姓名,手机号码,家庭电话,办公电话;JButton 查询,删除; p

19、ublic find(JFrame f) super(f,查询对话框,false); 姓名=new JTextField(15); 查询=new JButton(查询); 删除=new JButton(删除); 查询.addActionListener(this); 删除.addActionListener(this); 姓名=new JTextField(15); 手机号码=new JTextField(15); 手机号码.setEditable(false); 家庭电话=new JTextField(15); 家庭电话.setEditable(false); 办公电话=new JTextF

20、ield(15); 办公电话.setEditable(false); Box box1=Box.createHorizontalBox(); box1.add(new JLabel(输入要查询的姓名:,JLabel.CENTER); box1.add(姓名); box1.add(查询); Box box3=Box.createHorizontalBox(); box3.add(new JLabel(手机号码:,JLabel.CENTER); box3.add(手机号码); Box box4=Box.createHorizontalBox(); box4.add(new JLabel(家庭电话:

21、,JLabel.CENTER); box4.add(家庭电话); Box box5=Box.createHorizontalBox(); box5.add(new JLabel(办公电话:,JLabel.CENTER); box5.add(办公电话); Box box6=Box.createHorizontalBox(); box6.add(删除); Box boxH=Box.createVerticalBox(); boxH.add(box1); boxH.add(box3); boxH.add(box4); boxH.add(box5); boxH.add(box6); boxH.add(

22、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() public void windowClosing(WindowEvent e) setVisible(fal

23、se); ); public void actionPerformed(ActionEvent e) String name=; String url=jdbc:odbc:Database; String s1=; String s2=; String s3=; String s4=; if(e.getSource()=查询) try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(java.lang.ClassNotFoundException eee) name=姓名.getText(); String sql=select * fro

24、m data where 姓名=+name+; if(name!=) try Connection con=DriverManager.getConnection(url,null); Statement stmt=con.createStatement(); ResultSet rs=stmt.executeQuery(sql); while(rs.next() s1=rs.getString(姓名); s2=rs.getString(手机号码); s3=rs.getString(家庭电话); s4=rs.getString(办公电话); stmt.close(); con.close();

25、 catch(SQLException ex)System.out.println(ex.getMessage(); if(s1!=null) 姓名.setText(s1); 手机号码.setText(s2); 家庭电话.setText(s3); 办公电话.setText(s4); if(e.getSource()=删除) try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(java.lang.ClassNotFoundException eee) name=姓名.getText(); String sql=delete from nu

26、mber where 姓名=+name+; try Connection con=DriverManager.getConnection(url,null); Statement stmt=con.createStatement(); stmt.executeUpdate(sql); stmt.close(); con.close(); catch(SQLException eex)System.out.println(eex.getMessage(); 姓名.setText(null); 手机号码.setText(null); 家庭电话.setText(null); 办公电话.setText

27、(null); import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.Hashtable;public class manager extends JFrame implements ActionListener tianjia 号码添加=null; update 号码修改=null; find 精确查询=null; ztcx 整体查询=null; mhcx 模糊查询=null; about 关于=null; JButton 添加,修改,精确查询1,整体查

28、询1,模糊查询1,bbbb; Container con=null; CardLayout card=null; JLabel label=null; JPanel pCenter; JPanel aa,bb; public manager() JPanel aa=new JPanel(); JPanel bb=new JPanel(); aa.setLayout(new FlowLayout(FlowLayout.LEFT,10,10); 添加=new JButton(添加号码); 修改=new JButton(修改号码); 精确查询1=new JButton(精确查询); 整体查询1=ne

29、w JButton(整体查询); 模糊查询1=new JButton(模糊查询); bbbb=new JButton(关于); aa.add(添加); aa.add(修改); aa.add(精确查询1); aa.add(整体查询1); aa.add(模糊查询1); bb.add(bbbb); label=new JLabel(欢迎使用电话号码管理系统,JLabel.CENTER); label.setFont(new Font(TimesRoman,Font.BOLD,24); label.setForeground(Color.red); 添加.addActionListener(this)

30、; 修改.addActionListener(this); 精确查询1.addActionListener(this); 整体查询1.addActionListener(this); 模糊查询1.addActionListener(this); bbbb.addActionListener(this); card=new CardLayout(); con=getContentPane(); pCenter=new JPanel(); pCenter.setLayout(card); 号码添加=new tianjia(); 号码修改=new update(); 精确查询=new find(th

31、is); 整体查询=new ztcx(); 模糊查询=new mhcx(); 关于=new about(this); pCenter.add(欢迎语界面,label); pCenter.add(录入界面,号码添加); pCenter.add(修改界面,号码修改); pCenter.add(整体查询界面,整体查询); pCenter.add(模糊查询界面,模糊查询); con.add(aa,BorderLayout.NORTH); con.add(bb,BorderLayout.SOUTH); con.add(pCenter,BorderLayout.CENTER); con.validate(

32、); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); setVisible(true); setBounds(100,50,520,380); validate(); public void actionPerformed(ActionEvent e) if(e.getSource()=添加) card.show(pCenter,录入界面); else if(e.getSource()=修改) card.show(pCenter,修改界面); el

33、se if(e.getSource()=精确查询1) 精确查询.setVisible(true); else if(e.getSource()=整体查询1) card.show(pCenter,整体查询界面); else if(e.getSource()=模糊查询1) card.show(pCenter,模糊查询界面); else if(e.getSource()=bbbb) 关于.setVisible(true); public static void main(String args) new manager(); import java.sql.*;import java.awt.*;i

34、mport java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.*;public class mhcx extends JPanel implements ActionListener JTextArea ruslt; JTextField tj; JButton 查询; String name; String sql=; JLabel p; public mhcx() ruslt=new JTextArea(10,28); ruslt.setEditable(false); 查询=new JButto

35、n(查询); tj=new JTextField(5); p=new JLabel(请输入条件:); Box box2=Box.createHorizontalBox(); box2.add(p); box2.add(tj); box2.add(查询); Box box3=Box.createHorizontalBox(); box3.add(ruslt); Box boxH=Box.createVerticalBox(); boxH.add(box2); boxH.add(box3); 查询.addActionListener(this); JPanel pCenter=new JPanel

36、(); pCenter.add(boxH); setLayout(new BorderLayout(); add(pCenter,BorderLayout.CENTER); validate(); public void actionPerformed(ActionEvent e) String url=jdbc:odbc:Database; String s1=; String s2=; String s3=; String s4=; try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(java.lang.ClassNotFoundE

37、xception eee) if(e.getSource()=查询) try Connection con=DriverManager.getConnection(url,null); Statement stmt=con.createStatement(); name=tj.getText(); sql=select * from data where 姓名 like %+name+%; ResultSet rs=stmt.executeQuery(sql); ruslt.setText(姓 名 手机号码 家庭电话 办公电话n); if(!rs.next() ruslt.setText(无记

38、录); else do s1=rs.getString(姓名); s2=rs.getString(手机号码); s3=rs.getString(家庭电话); s4=rs.getString(办公电话); ruslt.append(s1); ruslt.append(s2); ruslt.append(s3); ruslt.append(s4+n); while(rs.next(); stmt.close(); con.close(); catch(SQLException ex)System.out.println(ex.getMessage(); import java.sql.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.*;public class tianjia extends JPanel implements ActionListenerJTextField 姓名,手机号码,家庭电话,办公电话;JButton 确定,重置; public tianjia() 姓名=new JTextField(15); 手机号码=new JT

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号