基于java的企业快速通信系统毕业论文.doc

上传人:laozhun 文档编号:2387375 上传时间:2023-02-17 格式:DOC 页数:51 大小:875KB
返回 下载 相关 举报
基于java的企业快速通信系统毕业论文.doc_第1页
第1页 / 共51页
基于java的企业快速通信系统毕业论文.doc_第2页
第2页 / 共51页
基于java的企业快速通信系统毕业论文.doc_第3页
第3页 / 共51页
基于java的企业快速通信系统毕业论文.doc_第4页
第4页 / 共51页
基于java的企业快速通信系统毕业论文.doc_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《基于java的企业快速通信系统毕业论文.doc》由会员分享,可在线阅读,更多相关《基于java的企业快速通信系统毕业论文.doc(51页珍藏版)》请在三一办公上搜索。

1、毕业论文 基于java的企业快速通信系统Design and development of enterprise communications system based on java院 系:信息科学与工程学院专 业:信息管理与信息系统班 级:2010级2班 姓 名: 学 号: 指导教师: 日期: 2014年6月 摘 要随着互联网的迅速发展,短信和E-mail已经成为人与人之间沟通的桥梁,越来越多的人开始选择通过网络进行即时沟通。为此,越来越多的网站开始提供发送E-mail以及收发手机短信的功能。与此同时,短信和E-mail也以其快捷、无时空限制、低成本等优势受到众多企业的青睐,成为企业移动商

2、务的主流。尤其在企业信息化的今天,效率决定成败,企业内、外部沟通的及时性将直接影响企业的运作效率,因此企业信息管理系统显著提高了工作和协作的效率。也正是鉴于企业信息管理的现状和发展趋势,特提出本课题并开展相关工作。传统的企业信息管理效率低,通信方式及其通信效率一直都是企业快速通信的难题。人工管理已经远远不能适应现代化管理的需求。因此,运用高效、准确的企业快速通信系统来代替手工管理是完善企业管理的有效手段。为了实现企业各部门之间的资源共享,提高工作质量和工作效率,故而设计此系统。关键词:短信,E-mail,效率,管理,资源ABSTRACTWith the rapid development of

3、 the Internet, text messaging and E-mail has become interpersonal communication Bridges, more and more people begin to select the option through network real-time communication. Therefore, more web sites began to offer to send E-mail and receiving of the SMS function. Meanwhile, text messaging and E

4、-mail with its fast, no space without restrictions, low cost and other advantages by numerous enterprises favour, become the enterprise mobile business mainstream. Especially in the enterprise information today, efficiency decides success or failure, enterprise internal and external communication ti

5、meliness will directly influence the enterprises operating efficiency, therefore the enterprise information management system significantly improves the work efficiency and collaboration. It is also given enterprise information management present situation and development trend, we hereby offer this

6、 topic and carrying out the related work. This system mainly through the administrator privileges for management. Mainly includes card holder management, information management, use of text messages, E-mail group, system parameter setting, system Settings and exit system. For enterprise internal and

7、 external liaison and communication provides a platform by providing convenience SMS and email services, helping the enterprise to solve the difficult, not promptly communicate information dissemination of problems. So as to improve the enterprise operation efficiency and reduces the enterprise oper

8、ating costs. Key Words:SMS,E-mail,Efficiency,Management,Resource目 录摘 要IABSTRACTII目 录III1 绪 论12 可行性研究22.1 经济可行性22.2 技术可行性22.2.1 服务器端22.2.2 数据库SQL Server 2008特点32.2.3 集成开发环境(IDE)-MyEclipse简介32.2.4 Web开发平台-Tomcat简介42.2.5 MVC简介43 系统分析与设计53.1 系统功能结构图53.2 系统目标63.3 业务流程图73.4 E-R图73.5 数据库设计84 公共模块设计134.1 数据

9、库连接及操作类的编写134.1.1 定义进行数据库连接机操作的类134.1.2 数据库的连接144.1.3 查询数据库154.1.4 更新数据库154.1.5 关闭数据库连接164.2 字符串处理类的编写164.3 配置Struts175 系统主要功能模块设计205.1 主页设计205.2 名片夹管理模块设计215.3 信息库管理模块设计305.4 收发短信模块设计315.5 邮件群发模块设计386 软件测试436.1 单元测试436.2 集成测试446.3 确认测试45结 论46致 谢47参考文献48 1 绪 论在企业信息化的今天,效率决定成败,企业内、外部沟通的及时性将直接影响企业的运作效

10、率。短信和E-mail已经成为人与人之间沟通的桥梁,越来越多的人开始选择选择通过网络进行即时沟通。为此,越来越多的网站开始提供发送E-mail以及收发手机短信的功能。与此同时,短信和E-mail也以其快捷、无时空限制、低成本等优势受到众多企业的青睐,成为企业移动商务的主流应用方式。现在多数企业的办公自动化系统的信息传递仅限于计算机内部网络。如果用户不在线,将无法知道是否有新的工作或紧急通知,为了确认是否有待办工作,不得不经常去访问办公自动化系统,检索是否有新的任务,而事实上这种检索的结果经常是徒劳的。这样一来,不仅造成了机器资源的浪费,而且也造成了人力资源的浪费,因此急需一套成型的企业信息管理

11、系统来解决这个问题。企业信息管理的作用是帮助企业解决企业内部、企业与外部沟通难、信息不能及时传播等问题。采用短信作为企业的移动通信手段,将给企业对内、对外进行信息传递与沟通带来革命性的变化,从而使得移动办公、客户服务、员工沟通等运作效率显著提升,而成本显著下降。虽然短信有以上诸多优点,但它还是有一定的不足,如信息内容单一和受到字数限制等。为解决这一问题,在企业信息管理系统中提供了邮件群发功能。通过邮件进行沟通也是目前比较流行的方式,它也具备实用、方便和廉价等优点。2 可行性研究开发任何一个基于计算机的系统,都会受到时间和资源上的限制。因此,在接受任何一个项目开发任务之前,必须根据客户可能提供的

12、时间和资源条件进行可行性分析,以减少项目开发风险,避免人力、物力和财力的浪费。可行性分析与风险分析在很多方面是相互关联的,项目风险越大,开发高质量的软件的可行性就越小。2.1 经济可行性随着移动互联网的迅猛发展,我们身边出现了无数新潮的电子产品。手机作为人们使用最广泛的电子产品之一。采用短信作为企业的移动通信手段,将给企业对内、对外进行信息传递与沟通带来革命性的变化,从而使得移动办公、客户服务、员工沟通等运作效率显著提升,而成本则显著下降。显然使用短信也会有一些不足,例如信息内容单一和受到字数限制等。为解决这一问题,在企业快信中提供了邮件群发功能。通过邮件进行沟通也是目前比较流行的方式,它也具

13、备实用、方便和廉价等优点。2.2 技术可行性在企业信息系统的开发中,主要用到的技术是使用短信猫和Java Mail组件来实现收发短信和群发邮件等功能。邮件群发是用Java Mail组件实现的,它是Sun公司发布的一种用于读取、编写和发送电子邮件的包,利用它可以方便地实现邮件群发。 企业信息管理系统的开发采用MVC设计模式和Struts1框架。MVC即为模型-视图-控制器,在Struts框架中,模型由JavaBean组成,用来实现程序的业务逻辑部分,视图主要由JSP2文件构成,ActionServlet、RequestProcessor和Struts辅助类来实现控制器。2.2.1 服务器端(1)

14、 操作系统:Windows XP 。(2) Java开发包:JDK1.5以上。(3) Java Mail开发包:Java Mail 1.4。(4) Web服务器:Tomcat 6.03。(5) 短信猫:北京人大金仓信息技术有限公司生产的串口短信猫(DG-CIA)。(6) 浏览器: IE6.0。(7) 数据库:SQL Server 20084。(8) 分辨率:最佳效果为1024*768。2.2.2 数据库SQL Server 2008特点SQL Server 2008是Microsoft 公司推出的SQL Server 数据库管理系统,是一个杰出的数据库平台,可用于大型联机事务处理、数据仓库、以

15、及电子商务等。这会使用户的工作变得越来越简单。SQL Server 2008数据库具有以下特点:(1) 图形化用户界面。(2) 真正的客户机/服务器体系结构。(3) SQL Server与Windows NT完全集成。(4) 丰富的编程接口。(5) SQL Server提供数据仓库功能。(6) 具有很好的伸缩性。(7) 对Web技术的支持。2.2.3 集成开发环境(IDE)-MyEclipse简介MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)Genuitec发布了MyEclipseEnterpriseWorkbench

16、8.5,更智能、更快捷、更简单和更便宜的J2EE工具的新版本的诞生。它的价格对于个人和企业开发人员来说都是非常有吸引力的。这是J2EEIDE市场一个重量级的选手。通过增加UML双向建模工具、WYSIWYG的JSP/Strutsdesigner、可视化的Hibernate/ORM工具、Spring和Webservices支持,以及新的Oracle数据库开发,MyEclipse8.5继续为业界提供全面的产品。在结构上,MyEclipse的特征可以被分为7类:(1) J2EE模型(2) WEB开发工具(3) EJB开发工具(4) 应用程序服务器的连接器(5) J2EE项目部署服务(6) 数据库服务(

17、7) MyEclipse整合帮助对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以在不影响其它模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。2.2.4 Web开发平台-Tomcat简介Tomcat服务器是一个免费的开放源代码的Web应用服务器。Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、

18、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持Servlet2.4和JSP2.05规范。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发

19、访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。这里的诀窍是,当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tom

20、cat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。2.2.5 MVC简介模型-视图-控制器(MVC)是80年代Smalltalk-80出现的一种软件设计模式,现在已经被广泛的使用。1、模型(Model)模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑。2、视图(View)视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。3、控制器(controller) 控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。3 系统分析与设计在软件设计之初,首先应该确定的是用户有怎样的需求,软件需要完成怎样的任务,在充分分析之后将用户

21、的需求以书面的形式表达出来。在确定系统完成哪些工作之后也就是对目标系统提出完整、准确、清晰、具体的要求。系统分析的结果是系统开发的基础,关系到工程的成败和软件产品的质量。在全面客观的系统分析的基础上,根据用户提出的系统功能进行相应的功能设计。本系统分为前台与后台两个方面,七个功能模块。前台采用JSP技术,主要用于实现各个模块的添加、删除、修改和查询等操作;后台采用SQL Server数据库,主要实现对数据库的管理与操作。(1) 系统前台前台展示区要求实现名片夹管理,信息库管理,收发短信,邮件群发,系统参数设定,系统设置和退出系统这些模块信息的显示功能和添加、删除、修改和查询等功能。(2) 系统

22、后台由于本系统既可以被中小型的企业所选择,又可以被一些大型企业作为日常通信软件所使用,所以在设计时,需要充分考虑不同企业的需求。例如,中小型企业需要选择操作简单、界面友好的数据库系统,而大型企业则需要选择安全、数据存储容量大的数据库系统。SQL Server 2008正好满足了这些需求,并且它能作为一个功能强大的数据库服务器,而且数据库引擎也用于需要在客户端本地存储独立数据库的应用程序中,所以本系统采用了SLQ Server 2008数据库。3.1 系统功能结构图本系统主要是通过管理员权限来进行管理的。主要包括名片夹管理、信息库管理、收发短信、邮件群发和退出系统。具体系统功能总图如图3-1所示

23、。企业信息管理系统名片夹管理信息库管理收发短信客户管理员工管理信息类别管理常用短语管理发送短信接收短信邮件群发图3-1 系统功能总图(1) 名片夹管理:用于客户信息(如客户名称、地址、邮政编码、所属区域、手机号码等)和员工信息的管理(如员工姓名、性别、有机号码、邮政编码等)进行查看、添加、删除等操作。(2) 信息库管理:用于信息类别和常用短语进行添加、删除、修改和查询操作。(3) 收发短信:用于短信信息(如短信编号、短信内容、收信人的手机号码、发信人、发信时间等)进行添加、删除、修改和查询操作。(4) 邮件群发:用于邮件信息(如邮件编号、邮件内容、收信人的邮箱账号、发信人、发信时间等)进行添加

24、、删除、修改和查询操作。最终,通过对多数企业日常业务的考察、分析,并结合短信及邮件自身的特点,得出本系统要求具有以下功能:(1) 用于管理客户和员工信息的名片夹管理功能。(2) 用于对常用短语及其类别进行管理的信息库管理功能。(3) 用于群发短信和接收短信的短信收发功能。(4) 邮件群发功能。3.2 系统目标根据前面所作的需求分析及用户的需求可知,企业信息管理系统属于小型的企业通信软件,在系统实施后,应达到以下目标:(1) 界面设计友好、美观。(2) 操作灵活、方便。(3) 提供功能强大的信息库系统,方便用户进行短信息的编写。(4) 提供邮件群发功能,提高工作效率。(5) 在发短信时,可以直接

25、从现有信息库中获取信息内容。(6) 对用户输入的数据,进行严格的数据检验,尽可能的避免人为错误。(7) 数据存储安全可靠。(8) 本系统运行安全稳定。3.3 业务流程图企业快速通信的业务流程图如图3-3所示图3-3业务流程图3.4 E-R图根据以上对系统所作的需求分析和系统设计,规划出本系统中使用的数据库实体分别为管理员实体、客户表实体、短信类型表实体,参数表实体等。如图3-4所示。图3-4 E-R图3.5 数据库设计由于本系统即可以被中小型的企业所选择,又可以被一些大型企业作为日常通信软件所使用,所以在设计时,需要充分考虑不同企业需求。例如,中小型企业需要选择操作简单、界面友好的数据库系统,

26、而大型企业则需要选择安全、数据存储容量大的数据库系统。SQL Server2008找好满足了这些需求,所以本系统采用SQL Server2008数据库。企业信息管理系统中的主要数据表如下。(1) tb_customer(客户信息表)客户信息表主要用来保存客户信息,其中手机号码和邮件地址最为重要,一定要保证内容准确。表tb_customer的具体结构如表3-1所示。表3-1客户信息表(tb_customer)的结构 字段名数据类型 默认值是否为空描述ID1intNoID(自动编号),主键namevarchar(50)NULLNo客户名称address varchar(100)NULLNo地址po

27、stcodevarchar(6)NULLNo邮政编码areavarchar(20)NULLYes所属区域mobileTelvarchar(15)NULLNo手机号码email varchar(100)NULLNo邮件地址bankNovarchar(30)NULLYes银行账号bankNamevarchar(20)NULLYes开户银行linkNamevarchar(10)NULLNo联系人(2) tb_personnel(员工信息表)员工信息表主要用来保存员工信息,其中手机号码和邮件地址最为重要,一定要保证内容准确。表tb_personnel的结构如表3-2所示。表3-2员工信息表(tb_pe

28、rsonnel)的结构字段名数据类型默认值是否为空描述ID2intNULLNoID(自动编号),主键name varchar(10)NULLNo员工姓名sexchar(2)NULLNo性别birthdaysmalldatetimeNULLYes出生日期school varchar(20)NULLYes毕业学校education varchar(10)NULLNo学历specialty varchar(30)NULLNo所学专业place varchar(10)NULLNo职位mobileTel varchar(15)NULLNo手机号码Email varchar(15)NULLNo邮件地址 (

29、3) tb_manager(管理员信息表)管理员信息表主要用于保存系统中的管理员信息,分为超级管理员和普通管理员。表tb_manager的结构如表3-3所示。表3-3管理员信息表(tb_manager)的结构字段名数据类型 默认值是否为空描述ID3intNo ID(自动编号),主键name varchar(30) NULLNo管理员名称pwd varchar(30) NULLNo管理员密码statebit0No是否为超级管理员(4) tb_infoType(短信类型表)短信类型表主要用于保存常用短语类型的信息,起到了方便快捷的作用。表tb_infoType的结构如表3-4所示。 表3-4短信类

30、型表(tb_infoType)的结构字段名数据类型默认值是否为空描述ID4intNoID(自动编号),主键namevarchar(50)NULLNo类型名称(5) tb_shortLetter(短信表)短信表主要用于保存已经发送短信的信息。表tb_shortLetter的结构如表3-5所示。表3-5短信表(tb_shortLetter)的结构字段名数据类型 默认值 是否为空描述ID5intNoID(自动编号),主键 toManvarchar(200)NULLNo收信人的手机号码contentvarchar(500)NULLNo收信内容fromManvarchar(30)NULLNo发信人sen

31、dTimedatetimegetdate()No发送时间(6) tb_parameter(系统参数表)系统参数表主要用于保存使用短信猫发送短信所需要的参数信息。表tb_parameter的结构如表3-6所示。表3-6系统参数表(tb_parameter)的结构 字段名数据类型默认值是否为空描述ID6intNoID(自动编号),主键devicevarchar(30)NULLNo通信端口(如COMI)baudvarchar(30)NULLNo波特率snvarchar(30)NULLNo注册码(7) tb_shortInfo(常用短语表)常用短语表主要用于保存系统中的常用短语的基本信息。表tb_sh

32、ortInfo 的结构如表3-7所示。表3-7常用短语表(tb_shortInfo)的结构字段名数据类型默认值是否为空描述ID7intNoID(自动编号),主键typeIdintNULLNo类型contentvarchar(30)NULLNo内容4 公共模块设计在开发过程中,经常会用到一些公共模块,如数据库连接及操作的类、字符串处理的类及Struts配置等,因此,在开发系统前首先需要设计这些公共模块。4.1 数据库连接及操作类的编写数据库连接及操作类通常包括连接数据库的方法getConnetion()、执行查询语句的方法executeQuery()、执行更新操作的方法executeUpdate

33、()、关闭数据库连接的方法close()。4.1.1 定义进行数据库连接机操作的类定义用于进行数据库连接及操作的类ConnDB,并将其保存到com.wgh.core包中,同时定义该类中所需的全局变量及构造方法。具体代码如下:package com.wgh.core; /将该类保存到com.wgh.core包中import java.io.InputStream; /导入java.io.InputStream类import java.sql.*; /导入java.sql包中的所有类import java.util.Properties; /导入java.util.Properties类publi

34、c class ConnDB public Connection conn = null; / 声明Connection对象的实例public Statement stmt = null; / 声明Statement对象的实例public ResultSet rs = null; / 声明ResultSet对象的实例private static String propFileName = /com/connDB.properties; / 指定资源文件保存的位置private static Properties prop = new Properties(); / 创建并实例化Properti

35、es对象的实例private static StringdbClassName= com.microsoft.jdbc.sqlserver.SQLServerDriver;/定义保存数据库驱动的变量microsoft:sqlserverprivate static String dbUser = sa;private static String dbPwd = sa;public ConnDB() /定义构造方法try /捕捉异常/将Properties文件读取到InputStream对象中InputStream in = getClass().getResourceAsStream(prop

36、FileName);prop.load(in); / 通过输入流对象加载Properties文件dbClassName = prop.getProperty(DB_CLASS_NAME); / 获取数据库驱动dbUrl = prop.getProperty(DB_URL, dbUrl);/获取URLdbUser = prop.getProperty(DB_USER, dbUser);/获取登录用户dbPwd = prop.getProperty(DB_PWD, dbPwd);/获取密码 catch (Exception e) e.printStackTrace(); / 输出异常信息4.1.2

37、 数据库的连接创建连接数据库的方法getConnection(),该方法返回Connection对象的一个实例。具体代码如下:public static Connection getConnection() Connection conn = null;try Class.forName(dbClassName).newInstance();conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd); catch (Exception ee) ee.printStackTrace();if (conn = null) System.err.

38、println(警告: DbConnectionManager.getConnection() 获得数据库链接失败.rnrn链接类型:+ dbClassName+ rn链接位置:+ dbUrl+ rn用户/密码+ dbUser + / + dbPwd);return conn;4.1.3 查询数据库创建执行查询语句的方法executeQuery(),返回值为ResultSet结果集。具体代码如下所示:public ResultSet executeQuery(String sql) try / 捕捉异常conn = getConnection();/ 调用getConnection()方法构造

39、Connection对象的一个实例connstmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);rs = stmt.executeQuery(sql); catch (SQLException ex) System.err.println(ex.getMessage(); / 输出异常信息return rs; / 返回结果集对象4.1.4 更新数据库创建执行更新操作的方法executeUpdate(),返回值为int型的整数,代表更新的行数。具体代码如下:public

40、int executeUpdate(String sql) int result = 0; / 定义保存返回值的变量try / 捕捉异常conn = getConnection();/ 调用getConnection()方法构造Connection对象的一个实例connstmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);result = stmt.executeUpdate(sql); / 执行更新操作 catch (SQLException ex) result =

41、 0; / 将保存返回值的变量赋值为0return result; / 返回保存返回值的变量4.1.5 关闭数据库连接创建关闭数据库连接的方法close()。具体代码如下:try / 捕捉异常if (rs != null) / 当ResultSet对象的实例rs不为空时rs.close(); / 关闭ResultSet对象if (stmt != null) / 当Statement对象的实例stmt不为空时stmt.close(); / 关闭Statement对象if (conn != null) / 当Connection对象的实例conn不为空时conn.close(); / 关闭Conn

42、ection对象 catch (Exception e) e.printStackTrace(System.err); / 输出异常信息4.2 字符串处理类的编写字符串处理类主要用于解决程序中经常出现的有关字符串处理问题,包括将数据库中有中文问题的字符串进行正确地显示和对字符串中的空值进行处理的方法。具体代码如下:package com.wgh.core;public class ChStr public static String toChinese(String strvalue) try if (strvalue = null) return ; else strvalue = new

43、String(strvalue.getBytes(ISO8859_1), GBK).trim();return strvalue; catch (Exception e) return ;/处理字符串中的空值public static final String nullToString(String v, String toV) if (v = null | .equals(v) v = toV;return v;4.3 配置StrutsStruts框架需要通过一个专门的配置文件来控制,它就是struts-config.xml,当然也可以取其它名字。在web.xml中配置Struts的配置文件,实际就是一个Servlet的配置,即在配置Servlet的config参数中定义Struts的配置文件及在Servlet的URL访问里使用后缀名,本系统中使用.do作为后缀名。接下来就要配置struts-config.xml文件。具体代码如下:actionorg.apache.struts.action.ActionServletconfig/WEB-INF/struts-config.x

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号