- 浏览: 625961 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (448)
- 字符串相关 (16)
- Struts2页面显示 (15)
- Hibernate错误记录 (6)
- linux命令 (2)
- java项目测试 (5)
- 个人作品 (10)
- hibernate应用 (15)
- struts1 (7)
- 数据库(除了hibernate) (42)
- J2ME/WAP (37)
- servlet/jsp (49)
- java桌面应用+java综合 (14)
- 服务器配置,报错解决 (24)
- Myeclipse配置,抛错解决 (8)
- linux (18)
- JavaScript+jquery+ajax (45)
- div css 页面设计 (16)
- 互联网综合运营 (14)
- 编程工具类 (3)
- 论文 报告 文献 (14)
- PHP (26)
- struts2 (9)
- spring (1)
- 我的IT生活 (14)
- Resin (6)
- java项目记录 (14)
- https安全 (11)
- 支付技术 (3)
最新评论
-
yihaijunyxr:
很好呀,我好久没用iteye了,今天找出两个帐号(yihaij ...
c/c++的监听tmlisten启动缓慢解决 -
yihaijun:
好像这不算是技术博客,是工作博客
c/c++的监听tmlisten启动缓慢解决 -
ml365:
后来还优化了webservice的前置框架,不用cxf,用了另 ...
c/c++的监听tmlisten启动缓慢解决 -
Jayliuying:
有点晚哈 但是也支持一下 楼主
java相关论文的参考文献【转】 -
gqsunrise:
...
我是项目经理,我的项目管理日记【20120229】
在大二第一学期的时候,在学习了JAVA中的输入输出流后老师要我们做一个通讯录。其功能可以添加删除和在关闭时保存信息,保存和导入数据用的技术是纯粹的IO流,没有设计到数据库,呵呵,功能是实现出来了,但效率可能不怎么好,希望高手们看完后给小弟点意见,我会改进的,OK,以下是我的原代码和试用方法说明:
代码:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import javax.swing.border.*;
import java.util.*;
class People implements Serializable
{
static int j;
static int j2=0;
static int j3=0;
static int munber=0; //这个就是整个程序的计数器
private static final long serialVersionUID = 3757263881374182471L;
String ID;
String Name;
String Address;
String Phone;
String Work;
protected Object length;
People(String ID,String Name,String Address,String Phone,String Work)
{
this.ID=ID;
this.Name=Name;
this.Address=Address;
this.Phone=Phone;
this.Work=Work;
}
String getID()
{
return ID;
}
String getName()
{
return Name;
}
String getAddress()
{
return Phone;
}
String getWork()
{
return Work;
}
static public String id()//变数据为字符
{
int jj=j;
Integer id=new Integer(2);
id=jj;
String iD=id.toString();
return iD;
}
static public String id2()//添加自加功能的方法,显示在文本框上
{
int j1=j+1;
Integer id2=new Integer(1);
id2=j1;
String jd=id2.toString();
return jd;
}
public String getValue()
{
String value="ID号:"+ this.ID+" "+"姓名:"+this.Name+" "+"地址:"+this.Address+" "+"电话:"+this.Phone+" "+"单位:"+this.Work+'\n';
return value;
}
}
public class tongxunlu extends JFrame
{
private static final long serialVersionUID = 1057782438609006743L;
//初始化窗口实现类
JTextField ID;
JTextField Name;
JTextField Address;
JTextField Phone;
JTextField Work;
JTextField IDc;
JTextField Namec;
JTextField Addressc;
JTextField Phonec;
JTextField Workc;
JButton Add;
JButton Clear;
JButton Load;
JButton Save;
JButton Delect;
JButton Check;
JPanel P1;
JPanel P2;
JTextArea Show;
JTextArea Show2;
JTabbedPane p;
Box baseBox,baseBox2,boxV1,boxV2,boxV3,boxV4,boxV5;
FileOutputStream fileOut;
ObjectOutputStream objectOut;
FileInputStream fileIn;
ObjectInputStream objectIn;
FileOutputStream fileOut2;
FileInputStream fileIn2;
DataInputStream dataInput;
DataOutputStream dataOutput;
FileWriter out;
FileReader in;
People p1[]=new People[100]; //构造存储数组
People personLoad[]=new People[100];
People personSave[]=new People[100];
People person[]=new People[100]; //定义person为保存对象的数组,容量是100个对象
tongxunlu (String s)
{ super(s);
Container con=getContentPane();
Show=new JTextArea();
Show2=new JTextArea();
p=new JTabbedPane();
P1=new JPanel();
P2=new JPanel();
ID=new JTextField(4);
Name=new JTextField(6);
Address=new JTextField(20);
Phone=new JTextField(8);
Work=new JTextField(18);
IDc=new JTextField(4);
Namec=new JTextField(6);
Addressc=new JTextField(20);
Phonec=new JTextField(8);
Workc=new JTextField(18);
Add=new JButton("添加");
Clear=new JButton("清空");
Load=new JButton("导入资料");
Delect=new JButton("删除");
Save=new JButton("保存");
Check=new JButton("查询");
boxV1=Box.createVerticalBox();
boxV1.add(new JLabel("输入您的ID:"));
boxV1.add(Box.createVerticalStrut(31));
boxV1.add(new JLabel("请输入您的姓名:"));
boxV1.add(Box.createVerticalStrut(31));
boxV1.add(new JLabel("请输入您的地址:"));
boxV1.add(Box.createVerticalStrut(31));
boxV1.add(new JLabel("请输入您的电话:"));
boxV1.add(Box.createVerticalStrut(31));
boxV1.add(new JLabel("请输入您的单位:"));
boxV2=Box.createVerticalBox();
boxV2.add(ID);
boxV2.add(Box.createVerticalStrut(8));
boxV2.add(Name);
boxV2.add(Box.createVerticalStrut(8));
boxV2.add(Address);
boxV2.add(Box.createVerticalStrut(8));
boxV2.add(Phone);
boxV2.add(Box.createVerticalStrut(8));
boxV2.add(Work);
baseBox=Box.createHorizontalBox();
baseBox.add(boxV1);
baseBox.add(Box.createHorizontalStrut(10));
baseBox.add(boxV2);
boxV3=Box.createVerticalBox();
boxV3.add(new JLabel("输入您要查找或删除的ID:"));
boxV3.add(Box.createVerticalStrut(8));
boxV4=Box.createVerticalBox();
boxV4.add(Box.createVerticalStrut(100));
boxV4.add(IDc);
boxV4.add(Box.createVerticalStrut(110));
boxV5=Box.createVerticalBox();
boxV5.add(Check);
boxV5.add(Box.createVerticalStrut(8));
boxV5.add(Delect);
boxV5.add(Box.createVerticalStrut(8));
baseBox2=Box.createHorizontalBox();
baseBox2.add(boxV3);
baseBox2.add(Box.createHorizontalStrut(10));
baseBox2.add(boxV4);
baseBox2.add(Box.createHorizontalStrut(10));
baseBox2.add(boxV5);
p.add("添加信息", baseBox);
p.add("查询或删除", baseBox2);
p.add("显示",new JScrollPane(Show));
p.add("资料库",new JScrollPane(Show2));
p.validate();
P2.add(Add);
P2.add(Clear);
P2.add(Save);
P2.add(Load);
con.add(p,BorderLayout.CENTER);
con.add(P2,BorderLayout.SOUTH);
con.validate();
setBounds(0,0,333,333);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Add.addActionListener(new ActionListener(){ //至此完成了窗口的设置.以下开始功能实现了
public void actionPerformed(ActionEvent e){
String iid=ID.getText();
People.j=Integer.parseInt(iid);
ID.setText(People.id2());
String name=Name.getText();
String address=Address.getText();
String phone=Phone.getText();
String work=Work.getText();
int count=People.j-1; //记录添加人数下标
try{
personSave[count]=new People(People.id(),name,address,phone,work);
String value=personSave[count].getValue();
String value2="您刚刚添加的信息是:"+value;
Show.insert(value2,Show.getDocument().getLength());//可在当前显示插入信息
}
catch(Exception a){System.out.println(a);}
}
});
Save.addActionListener(new ActionListener(){ //此方法可以把保存数组里面的所有当前对象写入文件
public void actionPerformed(ActionEvent e2){
try{
File f=new File("a.txt");
fileOut=new FileOutputStream(f);
objectOut=new ObjectOutputStream(fileOut);
}
catch(Exception a)
{
System.out.println(a);
}
for(int i2=0;i2<=People.j-1;i2++)
{
try {
objectOut.writeObject(personSave[i2]);
}
catch (IOException e22) {
e22.printStackTrace();
}
}
}
});
Load.addActionListener(new ActionListener(){ //此方法可以把文件里面的保存对象读入
public void actionPerformed(ActionEvent e2){
try{
int n=0;
fileIn=new FileInputStream("a.txt");
objectIn=new ObjectInputStream(fileIn);
while(( personSave[n]=(People)objectIn.readObject())!=null)
{ Show2.insert(personSave[n].getValue(),Show2.getDocument().getLength());
People.munber=n; //计数器计数
n=n+1;
}
}
catch(Exception a)
{System.out.println(a.getMessage()); }
}});
Clear.addActionListener(new ActionListener(){ //此方法可以清楚文本框,方便填写
public void actionPerformed(ActionEvent e){
Address.setText("");
Name.setText("");
Work.setText("");
Phone.setText("");
}
});
Check.addActionListener(new ActionListener(){ //此方法运用数据结构方法在链表里进行查找
public void actionPerformed(ActionEvent e){
LinkedList<People> list=new LinkedList<People>();
for(int k=0;k<=People.munber;k++)
{
list.add(personSave[k]);
}
int f=0;
String iid=IDc.getText(); //把文本框的字符转为可以参加运算的整型数字
f=Integer.parseInt(iid);
People find=list.get(f-1);
String message="您要查找的人的信息是:"+">"+find.getValue()+"\n";
Show.insert(message,Show.getDocument().getLength());
}
});
Delect.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
LinkedList<People> list=new LinkedList<People>();
for(int k=0;k<=People.munber;k++)
{
list.add(personSave[k]);
}
int d=0;
String iid=IDc.getText();
d=Integer.parseInt(iid);
People delect=list.remove(d-1);
String message="您已经删除了的人的信息是:"+">"+delect.getValue()+"\n";
Show.insert(message,Show.getDocument().getLength());
// People replace=list.set(d-1, new People("", "", "", "", ""));
try{ //通过覆盖达到利用数据结构删除文件信息的功能
File f=new File("a.txt");
fileOut=new FileOutputStream(f);
objectOut=new ObjectOutputStream(fileOut);
}
catch(Exception a)
{
System.out.println(a);
}
for(int i2=0;i2<=People.munber;i2++)
{
personSave[i2]=list.get(i2);
try {
objectOut.writeObject(personSave[i2]);
}
catch (IOException e22) {
e22.printStackTrace();
}
}
}
});
}
public static void main(String args[])
{
new tongxunlu("通讯录");
}
}
代码:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import javax.swing.border.*;
import java.util.*;
class People implements Serializable
{
static int j;
static int j2=0;
static int j3=0;
static int munber=0; //这个就是整个程序的计数器
private static final long serialVersionUID = 3757263881374182471L;
String ID;
String Name;
String Address;
String Phone;
String Work;
protected Object length;
People(String ID,String Name,String Address,String Phone,String Work)
{
this.ID=ID;
this.Name=Name;
this.Address=Address;
this.Phone=Phone;
this.Work=Work;
}
String getID()
{
return ID;
}
String getName()
{
return Name;
}
String getAddress()
{
return Phone;
}
String getWork()
{
return Work;
}
static public String id()//变数据为字符
{
int jj=j;
Integer id=new Integer(2);
id=jj;
String iD=id.toString();
return iD;
}
static public String id2()//添加自加功能的方法,显示在文本框上
{
int j1=j+1;
Integer id2=new Integer(1);
id2=j1;
String jd=id2.toString();
return jd;
}
public String getValue()
{
String value="ID号:"+ this.ID+" "+"姓名:"+this.Name+" "+"地址:"+this.Address+" "+"电话:"+this.Phone+" "+"单位:"+this.Work+'\n';
return value;
}
}
public class tongxunlu extends JFrame
{
private static final long serialVersionUID = 1057782438609006743L;
//初始化窗口实现类
JTextField ID;
JTextField Name;
JTextField Address;
JTextField Phone;
JTextField Work;
JTextField IDc;
JTextField Namec;
JTextField Addressc;
JTextField Phonec;
JTextField Workc;
JButton Add;
JButton Clear;
JButton Load;
JButton Save;
JButton Delect;
JButton Check;
JPanel P1;
JPanel P2;
JTextArea Show;
JTextArea Show2;
JTabbedPane p;
Box baseBox,baseBox2,boxV1,boxV2,boxV3,boxV4,boxV5;
FileOutputStream fileOut;
ObjectOutputStream objectOut;
FileInputStream fileIn;
ObjectInputStream objectIn;
FileOutputStream fileOut2;
FileInputStream fileIn2;
DataInputStream dataInput;
DataOutputStream dataOutput;
FileWriter out;
FileReader in;
People p1[]=new People[100]; //构造存储数组
People personLoad[]=new People[100];
People personSave[]=new People[100];
People person[]=new People[100]; //定义person为保存对象的数组,容量是100个对象
tongxunlu (String s)
{ super(s);
Container con=getContentPane();
Show=new JTextArea();
Show2=new JTextArea();
p=new JTabbedPane();
P1=new JPanel();
P2=new JPanel();
ID=new JTextField(4);
Name=new JTextField(6);
Address=new JTextField(20);
Phone=new JTextField(8);
Work=new JTextField(18);
IDc=new JTextField(4);
Namec=new JTextField(6);
Addressc=new JTextField(20);
Phonec=new JTextField(8);
Workc=new JTextField(18);
Add=new JButton("添加");
Clear=new JButton("清空");
Load=new JButton("导入资料");
Delect=new JButton("删除");
Save=new JButton("保存");
Check=new JButton("查询");
boxV1=Box.createVerticalBox();
boxV1.add(new JLabel("输入您的ID:"));
boxV1.add(Box.createVerticalStrut(31));
boxV1.add(new JLabel("请输入您的姓名:"));
boxV1.add(Box.createVerticalStrut(31));
boxV1.add(new JLabel("请输入您的地址:"));
boxV1.add(Box.createVerticalStrut(31));
boxV1.add(new JLabel("请输入您的电话:"));
boxV1.add(Box.createVerticalStrut(31));
boxV1.add(new JLabel("请输入您的单位:"));
boxV2=Box.createVerticalBox();
boxV2.add(ID);
boxV2.add(Box.createVerticalStrut(8));
boxV2.add(Name);
boxV2.add(Box.createVerticalStrut(8));
boxV2.add(Address);
boxV2.add(Box.createVerticalStrut(8));
boxV2.add(Phone);
boxV2.add(Box.createVerticalStrut(8));
boxV2.add(Work);
baseBox=Box.createHorizontalBox();
baseBox.add(boxV1);
baseBox.add(Box.createHorizontalStrut(10));
baseBox.add(boxV2);
boxV3=Box.createVerticalBox();
boxV3.add(new JLabel("输入您要查找或删除的ID:"));
boxV3.add(Box.createVerticalStrut(8));
boxV4=Box.createVerticalBox();
boxV4.add(Box.createVerticalStrut(100));
boxV4.add(IDc);
boxV4.add(Box.createVerticalStrut(110));
boxV5=Box.createVerticalBox();
boxV5.add(Check);
boxV5.add(Box.createVerticalStrut(8));
boxV5.add(Delect);
boxV5.add(Box.createVerticalStrut(8));
baseBox2=Box.createHorizontalBox();
baseBox2.add(boxV3);
baseBox2.add(Box.createHorizontalStrut(10));
baseBox2.add(boxV4);
baseBox2.add(Box.createHorizontalStrut(10));
baseBox2.add(boxV5);
p.add("添加信息", baseBox);
p.add("查询或删除", baseBox2);
p.add("显示",new JScrollPane(Show));
p.add("资料库",new JScrollPane(Show2));
p.validate();
P2.add(Add);
P2.add(Clear);
P2.add(Save);
P2.add(Load);
con.add(p,BorderLayout.CENTER);
con.add(P2,BorderLayout.SOUTH);
con.validate();
setBounds(0,0,333,333);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Add.addActionListener(new ActionListener(){ //至此完成了窗口的设置.以下开始功能实现了
public void actionPerformed(ActionEvent e){
String iid=ID.getText();
People.j=Integer.parseInt(iid);
ID.setText(People.id2());
String name=Name.getText();
String address=Address.getText();
String phone=Phone.getText();
String work=Work.getText();
int count=People.j-1; //记录添加人数下标
try{
personSave[count]=new People(People.id(),name,address,phone,work);
String value=personSave[count].getValue();
String value2="您刚刚添加的信息是:"+value;
Show.insert(value2,Show.getDocument().getLength());//可在当前显示插入信息
}
catch(Exception a){System.out.println(a);}
}
});
Save.addActionListener(new ActionListener(){ //此方法可以把保存数组里面的所有当前对象写入文件
public void actionPerformed(ActionEvent e2){
try{
File f=new File("a.txt");
fileOut=new FileOutputStream(f);
objectOut=new ObjectOutputStream(fileOut);
}
catch(Exception a)
{
System.out.println(a);
}
for(int i2=0;i2<=People.j-1;i2++)
{
try {
objectOut.writeObject(personSave[i2]);
}
catch (IOException e22) {
e22.printStackTrace();
}
}
}
});
Load.addActionListener(new ActionListener(){ //此方法可以把文件里面的保存对象读入
public void actionPerformed(ActionEvent e2){
try{
int n=0;
fileIn=new FileInputStream("a.txt");
objectIn=new ObjectInputStream(fileIn);
while(( personSave[n]=(People)objectIn.readObject())!=null)
{ Show2.insert(personSave[n].getValue(),Show2.getDocument().getLength());
People.munber=n; //计数器计数
n=n+1;
}
}
catch(Exception a)
{System.out.println(a.getMessage()); }
}});
Clear.addActionListener(new ActionListener(){ //此方法可以清楚文本框,方便填写
public void actionPerformed(ActionEvent e){
Address.setText("");
Name.setText("");
Work.setText("");
Phone.setText("");
}
});
Check.addActionListener(new ActionListener(){ //此方法运用数据结构方法在链表里进行查找
public void actionPerformed(ActionEvent e){
LinkedList<People> list=new LinkedList<People>();
for(int k=0;k<=People.munber;k++)
{
list.add(personSave[k]);
}
int f=0;
String iid=IDc.getText(); //把文本框的字符转为可以参加运算的整型数字
f=Integer.parseInt(iid);
People find=list.get(f-1);
String message="您要查找的人的信息是:"+">"+find.getValue()+"\n";
Show.insert(message,Show.getDocument().getLength());
}
});
Delect.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
LinkedList<People> list=new LinkedList<People>();
for(int k=0;k<=People.munber;k++)
{
list.add(personSave[k]);
}
int d=0;
String iid=IDc.getText();
d=Integer.parseInt(iid);
People delect=list.remove(d-1);
String message="您已经删除了的人的信息是:"+">"+delect.getValue()+"\n";
Show.insert(message,Show.getDocument().getLength());
// People replace=list.set(d-1, new People("", "", "", "", ""));
try{ //通过覆盖达到利用数据结构删除文件信息的功能
File f=new File("a.txt");
fileOut=new FileOutputStream(f);
objectOut=new ObjectOutputStream(fileOut);
}
catch(Exception a)
{
System.out.println(a);
}
for(int i2=0;i2<=People.munber;i2++)
{
personSave[i2]=list.get(i2);
try {
objectOut.writeObject(personSave[i2]);
}
catch (IOException e22) {
e22.printStackTrace();
}
}
}
});
}
public static void main(String args[])
{
new tongxunlu("通讯录");
}
}
发表评论
-
关于交友网站系统的开发
2010-12-10 19:27 1043交友机构作为“感情桥 ... -
java多线程结合界面开发实例(原创)财务管理系统源代码和效果图
2010-12-10 19:23 4773以前常常听说JAVA有多线程 可自己编写到的却很少,这学期编 ... -
www.xhigo.com.cn 第一期开发笔记【原创】
2010-12-10 19:13 1075酝酿了一段时间,一直想做一个实用性的网站出来并且把它经营好 ... -
银行家算法+银行家算法流程图+具体代码【转】
2010-12-10 19:03 3882计算机操作系统>一书 ... -
我的第一个原创J2ME游戏:砸飞机。
2010-12-10 19:00 1578呵呵,前段时间在网上认识了个从业J2ME开发的前辈,觉得他 ... -
J2ME音乐程序【原创】
2010-12-10 17:31 888import java.io.IOException; im ... -
爬楼梯递归算法(C++)【原创】
2010-12-10 17:23 2712#include "iostream.h" ... -
棋盘覆盖算法(分治算法)
2010-12-10 16:10 1520就说在一个2的K次方乘以2的K次方的棋盘里,又一个特殊的方格, ... -
我一生第一个程序(C编写)【原创】
2010-12-10 16:03 1033记得大一时候刚刚接触了电脑,像个傻B一样,把什么东西都往C盘( ...
相关推荐
JAVA+SQL电子通讯录带系统托盘JAVA+SQL数据库电子通讯录带系统托盘JAVA+SQL数据库电子通讯录带系统托盘JAVA+SQL数据库电子通讯录带系统托盘JAVA+SQL数据库电子通讯录带系统托盘JAVA+SQL数据库电子通讯录带系统托盘...
1)设计有5个进程并发执行的模拟调度程序,每个程序由一个PCB表示。 2)模拟调度程序可任选两种调度算法之一实现(有能力的同学可同时实现两个调度算法)。 3)程序执行中应能在屏幕上显示出各进程的状态变化,以...
这个项目通常涉及使用Java语言来设计用户界面,处理数据输入和输出,并通过数据库存储和检索联系人信息。以下是对"java+数据库实现个人通讯录的各种操作"这一主题的详细解释。 首先,我们需要理解Java在其中的角色...
【Java+SQL数据库通讯录】项目是一个使用Java编程语言与MySQL数据库进行交互的简单应用程序,主要功能是实现一个基于控制台的联系人管理工具。在这个项目中,Java作为客户端,负责用户界面的交互以及与数据库的通信...
在信息技术领域,开发一个实用的通讯录管理系统是常见的需求,尤其是在企业环境中。本系统采用C#编程语言,结合SQL Server数据库,利用Windows Forms(winform)作为用户界面,构建了一个高效、易用的通讯录管理平台...
总的来说,这个Java Swing通讯录管理系统提供了一个实用的案例,展示了如何利用Java GUI库和数据库技术来开发桌面应用。它可以帮助初学者理解Swing组件的使用、数据库操作、MVC设计模式以及良好的编程实践。同时,...
本项目利用MFC框架开发了一个连接到Access数据库的通讯录应用,这对于初学者来说是一个很好的实践案例。在本文中,我们将深入探讨如何使用MFC与Access数据库进行交互,以及如何构建一个简单的通讯录应用。 首先,...
在Java编程中,创建一个通讯录应用并利用Access数据库来存储数据是一个常见的实践。这个项目可能涉及了多个关键知识点,包括Java编程基础、数据库连接、JDBC(Java Database Connectivity)API使用、对象-关系映射...
综上所述,这个"Java+Swing+Mysql实现通讯录管理系统源码"项目是一个综合性的Java编程实践,涵盖了GUI设计、数据库操作和异常处理等多个核心知识点,对于学习Java桌面应用开发和数据库管理具有很高的参考价值。...
本项目是广东一所211大学的学生在学习Java后进行的课程设计,其目标是开发一个功能完备的通讯录软件,它不仅包含了基本的用户界面,还涵盖了相关的代码实现。 【描述】:“某广东211大学学习java后要交的一个课程...
在实现【基于数据库的通讯录】时,开发人员首先会设计数据库表结构,然后使用Java编写后端服务,通过Hibernate与MySQL进行数据交互。前端部分可能使用Swing或JavaFX等工具创建用户界面,允许用户输入、查看和管理...
在这个项目中,学生通常会被要求使用Java语言来创建一个能够存储、查询和管理联系人信息的应用,同时利用Access数据库来持久化这些数据。以下是一些关于这个课程设计的关键知识点: 1. **Java编程基础**:首先,你...
[毕业设计] Java环境下SQL数据库电子通讯录带托盘应用开发
从给定的文件信息来看,这是一段Java代码示例,旨在实现一个基于Java和Microsoft Access数据库的简单通讯录应用程序。下面将详细解析并总结出关键的知识点。 ### Java + ACCESS数据库通讯录 #### 一、项目背景与...
本篇将详细探讨一个基础的、不依赖数据库的Java通讯录系统,旨在帮助初学者了解如何仅用Java语言实现一个简单但实用的通讯录功能。 通讯录系统,作为日常生活中常见的信息管理工具,主要用于存储、查询和管理联系人...
【数据库版通讯录】是一个适合初学者的项目,旨在通过数据库技术实现一个基本的联系人管理功能。这个项目的核心在于如何有效地存储、管理和检索个人的联系信息,如姓名、电话号码、电子邮件地址等。在本项目中,我们...
Java图形化界面实现的个人通讯录管理...总之,这个个人通讯录管理系统结合了Java GUI编程、数据管理、用户认证和权限控制等多个IT领域的核心知识点,是一个综合性的项目,对于学习和提升Java应用开发能力非常有帮助。
在本项目中,我们主要关注的是使用MFC(Microsoft Foundation Classes)框架开发一个基于VC++(Visual C++)的通讯录应用。MFC是微软提供的一套C++类库,用于简化Windows应用程序的开发,它封装了Windows API,使得...
综上所述,通过本次课程设计的学习和实践,学生不仅能够掌握数据库系统的设计与开发流程,还能深入了解如何运用Java和SQL Server 2000等工具来构建实用的通讯录管理系统。这种实践经验对于提升学生的综合技能具有...
此外,为了提高用户体验,我们可以设计一个简单的图形用户界面(GUI),如使用Java Swing或JavaFX。在本项目中,`PhonePage.jar`可能就是实现了GUI功能的应用程序。用户可以通过界面输入联系人信息,并点击按钮执行...