企业邮件管理系统的设计与实现.docx
《企业邮件管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《企业邮件管理系统的设计与实现.docx(12页珍藏版)》请在冰豆网上搜索。
![企业邮件管理系统的设计与实现.docx](https://file1.bdocx.com/fileroot1/2022-12/9/3ac18d6c-aa18-4840-b583-d673921e0ef4/3ac18d6c-aa18-4840-b583-d673921e0ef41.gif)
企业邮件管理系统的设计与实现
摘要
随着互联网的迅速发展,E-mail已经成为人与人之间沟通的桥梁,越来越多的人开始选择通过网络进行即时沟通。
为此,越来越多的网站开始提供发送E-mail的功能。
与此同时,E-mail也以其快捷、无时空限制、低成本等优势受到众多企业的青睐,成为企业移动商务的主流应用方式。
本系统以Swing+JavaDB实现的企业邮件系统,包括以下几个功能:
用于管理客户和员工信息的名片夹管理功能;用于对常用短语及其类别进行管理的信息库管理功能;邮件群发功能;发送邮件附件的功能。
本文主要介绍了系统的基本情况、系统分析、系统设计、数据库设计以及各个模块的设计与主要代码及其注释。
关键词:
分层设计企业邮件系统
第1章引言
在企业信息化的今天,效率决定成败,企业内、外部沟通的及时性将直接影响企业的运作效率。
现在多数企业的办公自动化系统的信息传递仅限于计算机内部网络,如果用户不在线,将无法知道是否有新的工作或紧急通知,为了确认是否有待办工作,不得不经常去访问OA,检索是否有新任务,而事实上这种检索的结果经常是徒劳。
这样一来,不仅造成了机器资源的浪费,也造成了人力资源的浪费。
因此急需一套成型的企业邮件系统解决上述问题。
企业邮件系统属于小型的企业通信软件,由于该系统的作用是帮助企业解决企业内部、企业与外部沟通难、信息不能及时传播等问题,以提高工作效率。
因此根据需求分析可知,在系统实施后,应达到以下目标:
提供功能强大的信息库管理,方便用户进行信息的编写;在发送短信时,可以直接从现有信息库中获取信息内容;提供邮件群发功能,提高工作效率。
由于系统的目标客户为企业全体工作人员,既包括懂计算机操作技术的人员,也包括对计算机操作不熟练的人员,从而不能保证企业的所有人员都能进行高技术的计算机操作。
为此,系统界面设计应当友好、美观,操作必须灵活、方便。
另外,应企业进行事务处理过程中正确性、安全性的要求,系统应具备如下功能:
对用户输入的数据,进行严格的数据检验,尽可能地避免人为错误;数据存储安全、可靠。
第2章需求分析
1.项目范围
企业邮件的作用是帮助企业解决企业内部、企业与外部沟通难、信息不能及时传播等问题。
为此,企业邮件系统需要提供有邮件群发功能。
通过对多数企业日常业务的考察、分析,并结合短信及邮件自身的特点,本系统具有以下功能。
①名片夹管理功能:
用于管理客户和员工信息的。
②信息库管理功能:
用于对常用短语及其类别进行管理的。
③邮件群发功能:
用于向多个用户群发邮件。
④发送邮件附件的功能:
在发送邮件时,可以添加文件形式的附件。
2.系统用例模型
图系统用例图
3.设计上的限制
①数据库管理软件
系统必须使用Java接口同关系型数据库管理软件建立连接。
②平台要求
系统必须在CPU为P3以上,内存为512MB以上,操作系统为微软win2000以上或Linux(Unix)的服务器上顺利运行。
③Java的版本
系统必须在以上的版本上运行。
数据库设计(DatabaseDesign)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。
数据库的设计通常是以一个已经存在的数据库管理系统为基础的。
根据用户需求和业务流程,SQLServer2000,它是一个完备的数据库和分析包,其功能可以从各个方面降低数据仓库建立和维护的难度和成本。
我们认为使用SQLServer2000作为后台数据库平台,可以在性能和成本方面获得比较好的折衷,所以在本项目的开发中决定使用JAVADB。
此次开发研究使用了JSP+Servlet+JavaBean开发一个基于MVC架构,MVC是一种设计模式,主要有三个主要组件:
模型:
负责业务逻辑的状态和管理数据;
视图:
负责显示业务领域的表示视图;
控制器:
负责控制用户输入的流程和状态。
使用MVC模式时,通常会有某种形式的事件通知,当模型某部分有了变动时,可以通知视图控件。
NetBeans是SUN公司重点开发的JAVA集成开发环境,使用JAVA编程语言编写,具有很好的可移植性,它集成了程序员开发桌面,WEB,企业级和移动应用所需要的一切软件资源,具有以下特性:
(1)全面支持构建NetBeans插件模块和基于NetBeans平台的富客户端应用程序。
(2)全面支持SUNApplication及Tomcat5x
(3)全面支持JAVA企业版应用程序消息服务
(4)增强了对JAVAServerFaces和Struts的支持
(5)提供了更强大的代码编译器
(6)加快了代码编译的速度
(7)重新实现了对CVS的支持
(8)改进的、用户界面友好的IDE外形
(9)继承了编写、测试以及调试JAVAME程序的功能
第3章总体设计
系统框架
本系统有一个部分,5个完整的功能模块。
分别是:
名片夹管理、信息库管理、邮件群发、邮件参数设置、系统设置。
图功能结构图
邮件管理流程图是一种表明客户管理邮件的流程图,它可以帮助分析人员找出流程中的不合理回路。
下面图就是客户对邮件管理的流程图。
图客户处理邮件流程图
数据库设计
数据库设计(DatabaseDesign)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。
数据库的设计通常是以一个已经存在的数据库管理系统为基础的。
通过对业务流程的分析,得到了系统的实体,以及实体之间关系,根据这些实体与关系之间的联系,得到了系统的E-R图,如图所示。
档案实体E-R图
常用短语实体E-R图
类型实体E-R图
实体之间关系图
数据流程顶层图即是数据流程零层图,是宏观的数据流程图。
下面是网上宾馆订房的顶层图,如图所示。
图数据流顶层图
E-R模型用实体间联系反映现实世界事物间的内在联系,而数据表的建立是应用程序开发过程中的非常重要的一个环节,必须清楚每一模块要操纵的数据是那些,以及数据间的相互关系,然后建立数据表。
本系统数据库使用SQLServer2000,包含以下3个表:
档案表(personnel)、常用短语表(info)、类型表(type)。
下面分别详细介绍以上各表:
表档案表(personnel)
序号
字段名
类型
允许空
主键
外键
1
Num
int
否
是
2
type_id
int
否
是
3
Name
varchar(8)
否
4
Sex
char
(2)
否
5
Birthday
date
否
6
Company
varchar(50)
否
7
Dept
varchar(40)
否
8
Duty
varchar(50)
否
9
Handset
varchar(15)
否
10
Email
varchar(30)
否
表常用短语表(info)
序号
字段名
类型
是否空
主键
外键
1
num
int
否
是
2
type_id
int
否
是
3
name
varchar(500)
否
表类型表(type)
序号
字段名
类型
是否空
主键
外键
1
Id
int
否
是
2
Name
varchar(20)
否
3
Used
char(4)
否
第4章详细设计与实现
详细设计阶段就是把解决方法具体化,设计出详细规格说明,包含必要的细节,程序员可以根据它们写出实际的程序代码,详细设计也称模块设计,在这个阶段将详细地设计每个模块,具体的实现功能。
在详细设计过程中,具体的功能实现过程可以按照软件工程中的方法描述中的交互模型具体描述,力求完全符合客户的真实需求。
该系统的设计基于以下几个原则:
1.标准化;2.模块化;3.先进性;4.安全性;5.交互性。
首先实现对数据库的连接,代码如下:
StringCLASSFORNAME="";
StringCONNECSTR="jdbc:
odbc:
shop_db";
Try{(CLASSFORNAME);
=(CONNECTSTR);
}catch(Exceptione){();}
主窗体模块实现
1.功能
群发E-mail功能在主窗体中完成。
在“收信人列表”中显示的为所有接收信息的人员,需要从“名片夹”中添加;发送E-mail,可以通过单击“添加附件”按钮添加附件。
2.输入项目
图主窗体界面
3.主要代码
..\ExpressLetter\src\com\mwq\frame\
finalJToolBartoolBar=newJToolBar();dd(toolBar,;
etResource("/img/");
etResource("/img/");
能
单击系统右下方的“添加”按钮,将打开“添加名片”对话框,该对话框用来向名片夹中添加名片。
2.输出项目
图添加界面
3.主要代码
..\ExpressLetter\src\com\mwq\dao\
protectedVectorselectSomeNote(Stringsql){
Vector>vector=newVector>();
etColumnCount();
能
单击“E-mail设置”按钮,将打开“邮箱设置”对话框,该对话框用来设置发送E-mail的接口信息
2.输出项目
图邮件参数设置
3.主要代码
..\ExpressLetter\src\com\mwq\frame\
privateclassEmailSendButtonActionListenerimplementsActionListener{
publicvoidactionPerformed(ActionEvente){
Stringtitle=();oString();sEmpty())
(addressee);
else
()+','
+addressee);
}
intres=(mailForm);Whitten,系统分析与设计方法(影印版).北京:
高等教育出版社,2001年
[12]David.ManagingInformationSystems.北京:
清华大学出版社,2001年
[13]James’Brien.IntroductiontoInformationSystems.北京:
高等教育出版社,2002年
[14]计算机软件工程规范国家标准汇编.北京:
中国标准出版社,1998
[15]启明工作室编著+SQLServer网络应用系统开发与实例.北京:
人民邮电出版社,2005