基于J2EE技术的客户信息管理系统论文.docx
- 文档编号:9183531
- 上传时间:2023-05-17
- 格式:DOCX
- 页数:57
- 大小:857.68KB
基于J2EE技术的客户信息管理系统论文.docx
《基于J2EE技术的客户信息管理系统论文.docx》由会员分享,可在线阅读,更多相关《基于J2EE技术的客户信息管理系统论文.docx(57页珍藏版)》请在冰点文库上搜索。
基于J2EE技术的客户信息管理系统论文
毕业设计论文
基于J2EE技术的客户信息管理系统
目录
摘要Ⅰ
ABSTRACTⅡ
第1章概述2
第2章系统的目标和开发的可行性3
2.1系统目标3
2.2可行性分析3
第3章需求分析5
3.1市场需求分析5
3.2系统需求分析6
3.3系统相关要求10
第4章系统设计19
4.1系统功能设计19
4.2系统数据库设计20
4.3系统详细设计27
第5章系统测试37
5.1软件介绍37
5.2测试的作用和意义37
5.3测试方法和测试内容37
5.4测试结果和结论38
第6章系统维护39
6.1软件系统运行维护39
6.2影响维护工作量的因素40
结束语42
参考文献44
致谢45
附录46
第1章概述
当今是飞速发展的信息时代,在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的原因。
他的最大好处在于利用它能够进行信息管理,使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。
管理信息系统是进行信息的采集、存储、加工、维护和使用的系统。
它是随着管理科学和技术科学的发展而形成的。
客户信息管理系统作为公司管理客户一个不可缺少的部分,它的内容对于公司的决策者和管理者来说都至关重要,所以客户信息管理系统能够实时关注客户的各种动态,以客户为中心,提高公司的效益。
但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:
效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找,更新和维护都带来了不少的困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对客户信息进行管理,具有着手工管理所无法比拟的优点。
这些优点能够极大地提高客户信息管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。
几年前,各公司的客户管理基本上都是靠手工进行,随着时间增长,客户的增加,各部分数据都明显加大,手工操作相当困难,作为一个大的企业,保存他原有的客户信息是很有必要的,作为挖掘新客户,留住老客户的重要依据,如果用纸质档案来存储,花费的成本是很高的,而且很不方便,不宜查询和分析客户,所来看来,实现企业的信息化管理,依靠网络和计算机处理各种信息是迫在眉睫了。
针对公司管理模型,根据软件工程的基本流程,开发一款这样的软件,实现公司管理的电子化,减轻管理人员的负担。
借助计算机,管理人员能够很好的对现有的客户信息进行管理,方便了公司各层次的领导人,同时可以避免以前由于误操作而引起的错误。
客户是公司最宝贵的资源,为了更好的发掘老客户的价值,并开发更多新客户,公司决定实施客户信息管理系统。
希望通过这个系统完成对客户基本信息、联系人信息、交往信息、客户服务信息的充分共享和规范化管理;希望通过对大量客户数据分析,减少现有客户的流失,提高新客户的开发能力。
如何才能将一个企业与客户之间的信息管理好,这是一个十分迫切需要解决的问题,企业与客户之间的联系是时时刻刻都存在的,与客户之间保持良好的关系,应该是一个企业成功与否的一个前提,但是众多的客户,有着各自不同的信息,这就牵涉到许多的信息,开发这个系统是为了更好的处理这些信息。
第2章系统的目标和开发的可行性
2.1系统目标
本系统是针对一个某个特定公司开发的一套针对性和功能性都较强的信息管理系统。
本系统包括:
用户登录和退出模块,客户模块,联系人模块,交往记录模块。
另包括权限管理模块用于系统的用户、角色和相关权限。
系统功能为本说明书与附件Demo版界面描述中功能的并集。
在上述文件未明确描述的情况下,应能满足合同和相关投标书所描述的功能。
目标系统应当达到以下要求:
(1)可靠性:
能连续准确的处理业务,有较强的容错能力。
(2)可用性:
系统功能齐全,能够完全满足用户的需要。
(3)可维护性:
用户能对系统进行维护、扩充、修改。
(4)易用性:
用户能很容易的对系统进行操作。
(5)安全性:
保证系统的物理安全、数据存储和存取的安全与保密、数据传输的安全与保密。
(6)跨平台性:
能够方便的移植到不同操作系统。
2.2可行性分析
2.2.1技术可行性
在大学四年里学了很多计算机方面的理论知识,各种技术都涉及到了,毕业设计过程当中不仅可以把过去所学习的知识串接起来,对在学校期间所学习的知识有个系统的了解,尤其是对于软件的开发设计过程有个明确的了解,在开发的工具使用方面的熟练度也有所提高。
但缺乏一定的实践;大四我在专业方面进步了很多,尤其在做项目,在长沙牛耳实习的四个多月让我受益菲浅,学到了不少实践方面的内容,在本次毕业设计中涉及的技术,基本上都学过,所以完成此次设计,困难不是很大。
2.2.2经济可行性
此系统采用sqlserver2000和java开发,主要的费用为sqlserver服务和开发人员费用和空间费用,在项目投入使用之后能节省大量的人力,物力,财力,同时也会带来许多直接和间接的效益,经估算,做为一个一般的公司大概在第三年就能开始盈利,为了公司的长远利益,花费一定的资本和获取更多,相信每个老板都是愿意的,因此开发这个系统是可行的。
2.2.3操作可行性
应用此系统的主要角色为:
系统管理员,销售主管,客户经理,高管。
作为公司的管理人员必须要有一定的水平,对计算机应当有一定了解,此系统提供人性化操作界面和优质文档,让操作人员一看就能明白,同时技术支持也会对操作人员进行一定的培训,不会出现由于用户不熟悉系统而造成无法投入进行的困难
第3章需求分析
3.1市场需求分析
随着科学技术的发展,原来的信息管理方式已经过时,用软件管理是为了提高企业生产效率,提高经济效益的一种有效方式。
市场需求主要包括以下几个部分:
(1)信息分析能力
客户信息管理系统有大量客户和潜在客户的信息,企业应该充分的利用这些信息进行分析,使得决策者掌握的信息更加完全,从而能及时的作出决策。
良好的商业情报是企业成功的一半。
(2)对客户互动渠道进行集成的能力
对多渠道进行集成与功能部件的集成是同等重要的。
不管客户是与企业联系还是与销售人员联系,客户互动都应该是无缝的、统一的、高效的。
同一的渠道还能带来内部效益的提高。
(3)支持网络应用的能力
在支持企业内外的互动和业务处理方面,Web的作用越来越大,这使得客户信息管理的网络功能越来越重要。
如,网络可以为电子商务渠道提供支持。
为了使企业雇员都能方便应用客户信息管理系统,需要提供标准化的网络浏览器,使得用户几乎不需训练就能使用系统。
(4)建设集中的信息仓库的能力
采用集中化的信息、实时的客户信息,可使各业务部门和功能模块间的信息能统一起来。
(5)对工作流进行集成的能力
工作量是指把相关文档和工作规则自动化安排给负责特定业务流程中特定步骤的人。
客户信息管理应具有较强的功能,为跨部门工作提供支持,使这些工作能动态的、无缝的集成。
(6)与ERP功能的集成
如果客户信息管理与ERP和财务、库存、制造、分销、物流和人力资源等连接起来,使之成为一个客户互动循环,这种集成能使企业在系统间搜集商业情报,而不是低水平的数据同步。
3.2系统需求分析
客户信息管理系统作为管理企业与客户关系的主要管理系统平台,不仅要处理企业与客户之间的业务,还要处理企业内部相关部门的业务。
客户信息管理系统中不仅包含客户的信息资料,而且涉及市场竞争对手的情报资料。
信息数据的来源是多种多样的,可以是本地数据库,也可以是异地数据库,甚至可以是E-mail、文本文件等。
客户与企业、部门与部门、业务与业务、销售与市场及服务间复杂关系,导致客户信息系统中的数据不论是结构、类型还是彼此间的关联都是复杂多变的;对这种数据进行的处理也是多种多样的。
因此,要实现对客户数据的及时、准确的处理和有效利用,就需要:
(1)建立统一的信息编码系统;
(2)设计能够良好反映事务特性的数据模型;
(3)划分数据库类型,在分布式数据库管理系统和网络平台基础上,设计全局共享及局部共享数据库,以支持分布式数据处理,实现各分系统之间及其内部各功能模块之间的信息集成;
(4)提供强大的数据库管理系统,并在此基础上来完善客户销售数据库、客户市场数据库、客户支持与服务数据库、企业综合信息数据库等。
由于客户信息管理系统是以客户为整个管理的中心,不同于其它管理系统,其数据库管理有自己的特性。
因此,需要建构自己的数据库。
在构建数据库时,应注意客户信息管理系统的特性,同时也要注意客户信息管理系统与企业其它管理系统的协调。
本系统假设针对的是某小型企业,本系统将有助于其改善对现有客户的管理混乱状态,加强企业与客户的联系。
公司有如下需求:
(1)因为是小型企业,系统将只设系统管理员,管理员拥有对全部系统资料的操作权限。
(2)客户管理模块:
客户的查询,可分别按客户编号,客户名称,所属地区,客户经理姓名,客户等级进行查询,可椐据客户编号或客户名称实现模糊查询;查询的条件之间能实现组合查询。
客户删除:
能够根据id号对当前用户进行删除,将产生级联,对所有与该客户相关联的联系人,交往记录都将删除。
客户信息编缉:
将对以存于数据库的信息加载至页面,通过修改页面信息并将提交至业务逻辑层调用底层方法从而更新数据库。
(3)联系人模块:
联系人的添加,删除,修改,查询;
(4)交往记录模块:
交往记录的修改,删除,修改,查询;
根据需求分析,可以画出系统流程图如下:
联系人信息单
客户资料单
联系人信息表
客户一览表
市场部
查询结果清单
查询
系统管理员
服务反馈表
交往记录表
服务反馈清单
交往记录单
客服部
处理
物或单据
数据存储
外部环境
物或信息流
输向系统外
向系统输入
图3.2.1客户信息管理系统流程图
与本系统相关的用户和角色包括:
系统管理员:
管理系统用户、角色与权限,保证系统正常运行。
销售主管:
对客户服务进行分配。
创建销售机会。
对销售机会进行指派。
对特定销售机会制定客户开发计划。
分析客户贡献、客户构成、客户服务构成和客户流失数据,定期提交客户管理报告。
客户经理:
维护负责的客户信息。
接受客户服务请求,在系统中创建客户服务。
处理分派给自己的客户服务。
对处理的服务进行反馈。
创建销售机会。
对特定销售机会制定客户开发计划。
执行客户开发计划。
对负责的流失客户采取“暂缓流失”或“确定流失”的措施。
高管:
审查客户贡献数据、客户构成数据、客户服务构成数据和客户流失数据。
图3.2.2用例图
3.3系统相关要求
3.3.1系统的实现平台
计算机的硬件建议最低配置如下:
CPU800MHZ
内存256M
硬盘8G
IE6.0或以上版本
操作系统windows2000操作系统或更高
3.3.2开发工具的选择
操作系统为windowsXp,MyEclipse作为系统的集成开发环境,tomcat为web服务器,采用sqlserver2000作为数据库服务器,web服务器通过jdbc访问远程数据库,各项搭配有良好的兼容性。
3.3.3开发工具及技术概述
(1)MyEclipse概述[15]
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。
在结构上,MyEclipse的特征可以被分为7类:
J2EE模型,WEB开发工具,EJB开发工具,应用程序服务器的连接器,J2EE项目部署服务,数据库服务,MyEclipse整合帮助。
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。
MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。
XGA:
平台和安装支持
①兼容Eclipse3.3/Europa1.0
②支持Java5&Java6
③可运行在Windows(XP,Vista)、Linux、Mac操作系统
改进了JavaEE5和Spring功能部件
①提高EJB3工程项目的灵活度,从数据库模式直接产生bean
②支持Java持久化结构开发
③对Spring2.0升级,增强配置管理功能
④升级Hibernate
⑤Spring-JPA高度集成
支持AJAX开发和测试
①支持美国Apple公司—所有的AJAX特征能在Mac操作系统上运行
②改进了AJAXWeb浏览器
③改进了AJAX工具
④增强了JavaScript调试
支持RADWeb开发
具备Matisse4MyEclipse可视化Swing设计器
快速JavaEE部署和测试
项目自动部署和启动服务:
根据指定的调试和运行模式,自动配置项目和启动服
①在配置前,自动停止运行的服务器;在现有的应用程序配置中可以重新配置
②MyEclipseTomcat6服务器——就地集成,启动只要一秒钟
③MyEclipseDerby服务器:
自动进行JDBC连接;可配置的启动选项
(2)tomcat概述[16]
Tomcat服务器是一个免费的开放源代码的Web应用服务器,Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。
因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
这里的诀窍是,当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。
另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
不过,Tomcat处理静态HTML的能力不如Apache服务器。
(3)SQLServer2000概述[17]
SQLServer是微软公司开发的一个关系数据库管理系统,以Transact_SQL作为它的数据库查询和编程语言。
T-SQL是结构化查询语言SQL的一种,支持ANSISQL-92标准。
SQLServer采用二级安全验证、登录验证及数据库用户帐号和角色的许可验证。
SQLServer支持两种身份验证模式:
WindowsNT身份验证和SQLServer身份验证。
7.0版支持多种类型的角色,"角色"概念的引入方便了权限的管理,也使权限的分配更加灵活。
SQLServer为公共的管理功能提供了预定义的服务器和数据库角色,可以很容易为某一特定用户授予一组选择好的许可权限。
SQLServer可以在不同的操作平台上运行,支持多种不同类型的网络协议如TCP/IP、IPX/SPX、AppleTalk等。
SQLServer在服务器端的软件运行平台是WindowsNT、Windows9x,在客户端可以是Windows3.x、WindowsNT、Windows9x,也可以采用其它厂商开发的系统如Unix、AppleMacintosh等。
微软的SQLServer是一项完美的客户/服务器系统。
SQLServer需要安装在WindowsNT的平台上,而WindowsNT可以支持Intel386,PowerPC,MIPS,AlphaPC和RISC等平台,它使SQLServer具备足够的威力和功能。
这里所有的文章所采用的数据库应用程序都是基于SQLServer之上的,采用ODBC及标准的SQL查询,可以非常简单的移植到任何一个支持ODBC的数据库之上,如:
Oracle,Informix,Db2和Access,在阅读有关ASP数据库编程技术之前,要确认你至少熟悉一种数据库管理系统,并可以使用标准的SQL查询语言操作数据库。
SQLServer提供服务器端的软件,这部分需要安装在NTServer上,SQLServer的用户端则可以安装在许多用户端PC系统中,Windows可以让用户端进行数据库的建立,维护及存取等操作,SQLServer可以最多定义32767个数据库,每个数据库中,可以定义20亿个表格,每个表格可以有250个字段,每个表格的数据个数并没有限制,每一个表格可以定义250个索引,其中有一个可以是Clustered索引。
SQLServer所使用的数据库查询语言称为Transact-SQL,它是SQLServer的核心,Transact-SQL强化了原有的SQL关键字以进行数据的存取,储存及处理等功能,Transact-SQL扩充了流程控制指定,可以使你方便的编写功能强大的存储过程,他们存放在服务器端,并预先编译过,执行速度非常块,触发是一种特殊的存储过程,用来确保SQLServer数据库引用的完整性,你可以建立插入,删除和更新触发以控制相关的表格中对数据列的插入,删除和更新,你还可以使用规则(Rule),缺省(default)以及限制(Constraints),来协助将新的数值套用到表格中去。
(4)jsp技术[18]
JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与JavaServlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。
(5)struts技术[19]
Struts是Apache基金会Jakarta项目组的一个OpenSource项目,它采用MVC模式,能够很好地帮助java开发者利用J2EE开发Web应用。
和其他的java架构一样,Struts也是面向对象设计,将MVC模式"分离显示逻辑和业务逻辑"的能力发挥得淋漓尽致。
Structs框架的核心是一个弹性的控制层,基于如JavaServlets,JavaBeans,ResourceBundles与XML等标准技术,以及JakartaCommons的一些类库。
Struts有一组相互协作的类(组件)、Serlvet以及jsptaglib组成。
基于struts构架的web应用程序基本上符合JSPModel2的设计标准,可以说是一个传统MVC设计模式的一种变化类型。
Struts最早是作为ApacheJakarta项目的组成部分问世运作。
项目的创立者希望通过对该项目的研究,改进和提高JavaServerPages、Servlet、标签库以及面向对象的技术水准。
Struts的目的是为了减少在运用MVC设计模型来开发Web应用的时间。
你仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。
Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点,使开发者能更深入的了解其内部实现机制。
除此之外,Struts的优点主要集中体现在两个方面:
Taglib和页面导航。
Taglib是Struts的标记库,灵活运用,能大大提高开发效率。
另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。
关于页面导航,我认为那将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。
通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。
尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。
MVC即Model-View-Controller的缩写,是一种常用的设计模式。
MVC减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。
Struts是MVC的一种实现,它将Servlet和JSP标记(属于J2EE规范)用作实现的一部分。
Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。
(6)hibernate技术[20]
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Ja
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 J2EE 技术 客户 信息管理 系统 论文