Java SE课程设计.docx

上传人:b****5 文档编号:7680113 上传时间:2023-01-25 格式:DOCX 页数:30 大小:580.75KB
下载 相关 举报
Java SE课程设计.docx_第1页
第1页 / 共30页
Java SE课程设计.docx_第2页
第2页 / 共30页
Java SE课程设计.docx_第3页
第3页 / 共30页
Java SE课程设计.docx_第4页
第4页 / 共30页
Java SE课程设计.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

Java SE课程设计.docx

《Java SE课程设计.docx》由会员分享,可在线阅读,更多相关《Java SE课程设计.docx(30页珍藏版)》请在冰豆网上搜索。

Java SE课程设计.docx

JavaSE课程设计

 

JavaSE程序设计

期末课程设计报告

 

题目:

校友录管理系统

班级:

**级**班

学号:

201281110103201281110158

姓名:

*****

成绩:

完成时间:

2014年6月

 

目录

第一章引言2

1.1开发背景2

1.2需求分析2

第二章系统设计2

2.1功能设计2

2.2数据库设计3

2.3流程(或算法)设计3

2.4类与接口设计4

第三章系统实现4

3.1管理子系统4

第四章设计总结5

参考文献

附录(核心代码)6

校友录管理系统

第一章引言

1.1开发背景

1、巩固和提高JAVA编程技术。

2、培养掌握学习设计的基本思路和方法。

3、增强分析、解决问题的能力。

4、提高科技论文的写作能力。

1.2需求分析

功能需求分析:

校友录主要有一下模块:

校友录界面设计、添加联系人、删除联系人、浏览所有联系人、修改信息、查询联系人。

第二章系统设计

2.1功能设计

通讯录界面设计

主要功能是设计校友录的界面,能够提示用户的实际操作等。

其中:

1添加联系人

2删除联系人

3显示所有联系人

4修改信息

5查找联系人

6重置

校友录添加联系人模块

主要功能是添加联系人模块,添加操作是根据用户的要求实现的。

包括添加联系人的姓名、性别、年龄、电话、QQ、地址等。

校友录删除联系人模块

主要功能是删除不再需要的联系人。

校友录显示所有联系人模块

显示所有的联系人的信息。

包括姓名、年龄、性别、电话、QQ、地址并提示所有联系人已经全部显示出来!

校友录修改联系人模块

主要是修改联系人的信息,界面提示要输入需要修改的姓名或者电话号码,显示出改联系人的所有信息,并提示根据下面提示修改信息,姓名、年龄、电话、QQ、地址等。

2.2数据库设计

运行环境

运行平台:

Windows7

运行环境:

eclipse

开发工具和编程语言

系统开发语言:

Java

数据库管理软件:

MySQLSQLyog

2.3流程(或算法)设计

图2.3系统功能流程

第三章系统实现

3.1管理子系统

主界面如下:

用户进入系统后,输入用户名和密码即可登录进行相关操作,若用户名错误、密码错误或用户名与密码不匹配则无法登陆。

添加运行程序如下

根据用户的要求实现添加联系人的。

包括添加联系人的姓名、性别、年龄、电话、QQ、地址等。

查询运行程序如下

查询模块可以进行学生信息查询,所有的校友以及相关信息都可在这里查看。

修改程序如下

修改模块可以及时对联系人的相关信息进行修改。

删除运行程序如下

鼠标右键单击要删除的联系人,会弹出删除或修改字样,点删除即可。

第四章设计总结

心得体会:

历时半个月的努力,校友录管理系统已经顺利完成。

在这段时间里,我们严格要求自己,不断寻找自身差距,拓展知识面,培养实际工作能力。

在本套系统的设计里,让我对java程序设计语言及Mysql数据库有了更深刻的理解,使我能更好的从理论结合实际,从中收益匪浅。

本系统的数据库采用了Mysql,数据库应用程序的开发使用java语言。

在设计中也遇到了很多困难,但最终都找资料解决了。

这次设计的经历为我以后的设计积累了宝贵的经验。

因为时间比较紧张,该系统还有很多不足之处,系统功能还有待进一步完善和拓展,例如同学照片之类的信息完善,还有校内同学的院系分布等等。

系统设计的过程中,让我深深体会到一个有价值的软件对系统需求进行详细的分析是至关重要的,如Mysql的可视化界面SQLyog,而画出系统流程图和结构图则是不可缺少的步骤。

这样才可以在设计时做到有条不紊的进行。

参考文献

【1】王珊,萨师煊,数据库系统概论(第四版),高等教育出版社。

【2】钱雪忠.数据库原理及应用(第二版).北京:

北京邮电大学出版社,2007

【3】王珊.数据库技术与联机分析处理.北京:

北京科学出版社,1998

附录(核心代码)

package.cxsw.project;

importjava.util.List;

publicclassLoginDialogextendsDialog{

protectedObjectresult;

publicstaticShellshell;

privateTexttext;

privateTexttext_1;

publicLoginDialog(Shellparent,intstyle){

super(parent,style);

setText("SWTDialog");

}

publicObjectopen(){

createContents();

shell.open();

shell.layout();

Displaydisplay=getParent().getDisplay();

while(!

shell.isDisposed()){

if(!

display.readAndDispatch()){

display.sleep();

}

}

returnresult;

}

privatevoidcreateContents(){

shell=newShell(getParent(),SWT.SHELL_TRIM|SWT.BORDER);

shell.setSize(450,300);

shell.setText(getText());

LabellblNewLabel=newLabel(shell,SWT.NONE);

lblNewLabel.setFont(SWTResourceManager.getFont("华文琥珀",22,SWT.NORMAL));

lblNewLabel.setBounds(50,55,319,34);

lblNewLabel.setText("\u6B22\u8FCE\u8FDB\u5165\u6821\u53CB\u5F55\u7BA1\u7406\u7CFB\u7EDF");

LabellblNewLabel_2=newLabel(shell,SWT.NONE);

lblNewLabel_2.setBounds(102,104,48,34);

lblNewLabel_2.setText("\u7528\u6237\u540D\uFF1A");

text=newText(shell,SWT.BORDER);

text.setBounds(159,99,110,23);

LabellblNewLabel_1=newLabel(shell,SWT.NONE);

lblNewLabel_1.setText("\u5BC6\u7801\uFF1A");

lblNewLabel_1.setBounds(102,155,61,23);

text_1=newText(shell,SWT.BORDER|SWT.PASSWORD);

text_1.setBounds(159,155,110,23);

ButtonbtnNewButton=newButton(shell,SWT.NONE);

btnNewButton.addSelectionListener(newSelectionAdapter(){

publicvoidwidgetSelected(SelectionEvente){

StringuserName=text.getText().trim();

StringuserPsw=text_1.getText().trim();

DbUtildb=newDbUtil();

List>list=db.query("select*fromuserwhereusername=?

anduserpassword=?

",newObject[]{userName,userPsw});

if(list.size()>0){

MainDialogmg=newMainDialog(newShell(),SWT.None);

mg.open();

}else{

System.out.println("错误");

}

}

});

btnNewButton.setBounds(143,204,80,27);

btnNewButton.setText("\u767B\u5F55");

}

}

package.cxsw.project;

importorg.eclipse.swt.SWT;

publicclassAddSStudentDialogextendsDialog{

protectedObjectresult;

protectedShellshell;

privateTexttext;

privateTexttext_1;

privateTexttext_3;

privateTexttext_4;

privateTexttext_5;

privateTexttext_2;

publicAddSStudentDialog(Shellparent,intstyle){

super(parent,style);

setText("SWTDialog");

}

publicObjectopen(){

createContents();

shell.open();

shell.layout();

Displaydisplay=getParent().getDisplay();

while(!

shell.isDisposed()){

if(!

display.readAndDispatch()){

display.sleep();

}

}

returnresult;

}

privatevoidcreateContents(){

shell=newShell(getParent(),SWT.SHELL_TRIM|SWT.BORDER);

shell.setSize(390,379);

shell.setText(getText());

LabellblNewLabel=newLabel(shell,SWT.NONE);

lblNewLabel.setBounds(49,45,61,17);

lblNewLabel.setText("\u59D3\u540D\uFF1A");

Labellabel=newLabel(shell,SWT.NONE);

label.setBounds(49,86,61,17);

label.setText("\u6027\u522B\uFF1A");

Labellabel_1=newLabel(shell,SWT.NONE);

label_1.setBounds(49,126,61,17);

label_1.setText("\u5E74\u9F84\uFF1A");

Labellabel_2=newLabel(shell,SWT.NONE);

label_2.setBounds(49,163,61,17);

label_2.setText("\u7535\u8BDD\uFF1A");

LabellblQq=newLabel(shell,SWT.NONE);

lblQq.setBounds(49,204,61,17);

lblQq.setText("QQ:

");

Labellabel_3=newLabel(shell,SWT.NONE);

label_3.setBounds(49,242,61,17);

label_3.setText("\u5730\u5740\uFF1A");

ButtonbtnNewButton=newButton(shell,SWT.NONE);

btnNewButton.setBounds(84,277,80,27);

btnNewButton.setText("\u91CD\u7F6E");

Buttonbutton=newButton(shell,SWT.NONE);

button.addSelectionListener(newSelectionAdapter(){

@Override

publicvoidwidgetSelected(SelectionEvente){

StringstuName=text.getText().trim();

StringstuSex=text_1.getText().trim();

StringstuAge=text_2.getText().trim();

StringstuPhone=text_3.getText().trim();

StringstuQQ=text_4.getText().trim();

StringstuAddress=text_5.getText().trim();

DbUtildb=newDbUtil();

intresult=db.update("insertintostudent(name,sex,age,phone,address,QQ)value(?

?

?

?

?

?

)",newObject[]{

stuName,stuSex,stuAge,stuPhone,stuAddress,stuQQ

});

if(result>0){

MessageBoxbox=newMessageBox(newShell(),SWT.None);

box.setText("提示信息");

box.setMessage("添加成功!

");

box.open();

shell.close();

}else{

MessageBoxbox=newMessageBox(newShell(),SWT.None);

box.setText("提示信息");

box.setMessage("添加失败!

");

box.open();

}

};

});

button.setText("\u6DFB\u52A0");

button.setBounds(210,277,80,27);

text=newText(shell,SWT.BORDER);

text.setBounds(116,45,141,23);

text_1=newText(shell,SWT.BORDER);

text_1.setBounds(116,83,141,23);

text_3=newText(shell,SWT.BORDER);

text_3.setBounds(116,163,141,23);

text_4=newText(shell,SWT.BORDER);

text_4.setBounds(116,198,141,23);

text_5=newText(shell,SWT.BORDER);

text_5.setBounds(116,242,141,23);

text_2=newText(shell,SWT.BORDER);

text_2.setBounds(116,120,141,23);

}

}

package.cxsw.utils;

importjava.sql.Connection;

importjava.sql.DriverManager;

importjava.sql.PreparedStatement;

importjava.sql.ResultSet;

importjava.sql.ResultSetMetaData;

importjava.sql.SQLException;

importjava.sql.Statement;

importjava.util.ArrayList;

importjava.util.HashMap;

importjava.util.List;

importjava.util.Map;

publicclassDbUtil{

privateConnectionconn=null;

privateStatementstmt=null;

privatePreparedStatementps=null;

privateResultSetrs=null;

privateStringurl="jdbc:

mysql:

//localhost:

3306/bjw";

privateStringpassword="123456";

privateStringuser="root";

/*加载驱动*/

static{

try{

Class.forName("com.mysql.jdbc.Driver");

}catch(ClassNotFoundExceptione){

System.out.println("加载驱动出现异常!

");

e.printStackTrace();

}

}

/*获取连接*/

privateConnectiongetConn(){

try{

conn=DriverManager.getConnection(url,user,password);

}catch(SQLExceptione){

System.out.println("获取连接出现异常!

");

e.printStackTrace();

}

returnconn;

}

/*提供更新方法*/

publicintupdate(Stringsql,Object[]pars){

try{

ps=getConn().prepareStatement(sql);

for(inti=0;i

ps.setObject(i+1,pars[i]);

}

returnps.executeUpdate();

}catch(SQLExceptione){

System.out.println("执行更新语句出现异常!

");

e.printStackTrace();

}finally{

release();

}

return-1;

}

privatevoidrelease(){

if(rs!

=null){

try{

rs.close();

}catch(SQLExceptione){

System.out.println("关闭结果集出现错误!

");

e.printStackTrace();

}

}

if(ps!

=null){

try{

ps.close();

}catch(SQLExceptione){

System.out.println("关闭预处理出现错误!

");

e.printStackTrace();

}

}

if(stmt!

=null){

try{

stmt.close();

}catch(SQLExceptione){

System.out.println("关闭语句对象集出现错误!

");

e.printStackTrace();

}

}

if(conn!

=null){

try{

conn.close();

}catch(SQLExceptione){

System.out.println("关闭结连接出现错误!

");

e.printStackTrace();

}

}

}

publicintupdate(Stringsql){

returnupdate(sql,newObject[]{});

}

/*查询方法*/

publicList>query(Stringsql){

returnquery(sql,newObject[]{});

}

publicList>query(Stringsql,Object[]pars){

List>list=newArrayList>();

try{

ps=getConn().prepareStatement(sql);

for(inti=0;i

ps.setObject(i+1,pars[i]);

}

rs=ps.executeQuery();

ResultSetMetaDatarsmd=rs.getMetaData();

while(rs.next()){

/*将当前数据转化到map中*/

Mapmap=newHashMap();

for(inti=1;i<=rsmd.ge

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

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1