毕业设计(论文)-房地产客户关系管理系统的设计与实现.doc_第1页
毕业设计(论文)-房地产客户关系管理系统的设计与实现.doc_第2页
毕业设计(论文)-房地产客户关系管理系统的设计与实现.doc_第3页
毕业设计(论文)-房地产客户关系管理系统的设计与实现.doc_第4页
毕业设计(论文)-房地产客户关系管理系统的设计与实现.doc_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

全套设计加扣 3012250582存档日期: 存档编号: 本 科 生 毕 业 设 计 题 目: 房地产客户关系管理系统的设计与实现 学 号: 姓 名: 联 系 电 话: 电 子 邮 箱: : 学 院: 计算机科学与技术学院 专 业: 计算机科学与技术(物联网) 年 级 、 班 级: 11计81班 指 导 教 师: 江苏师范大学教务处印制江苏师范大学计算机学院学士学位毕业设计报告原创性声明本人郑重声明:所呈交的毕业设计报告房地产客户关系管理系统的设计与实现 是本人在导师指导下,在江苏师范大学计算机学院学习期间,进行毕业设计时取得的成果。本人知道,除文中已经标明引用的内容外,本毕业设计报告不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人或集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。班级: 11级81班 学号: 学生签名: 2015 年 5 月 20 日房地产客户关系管理系统的设计与实现摘 要:随着中国经济越来越好,人民生活水平越来越高,房地产事业蓬勃发展。由于客户的增加和该行业的竞争越来越激烈,房地产公司需要一个好的系统,用来管理客户信息,方便和客户交流,提高自己的竞争力。房地产客户关系管理系统是用于客户关系管理,方便房地产公司员工查看客户信息,及时或者积极与客户沟通,发展业务。帮助自己企业提高竞争力。系统管理员通过系统为员工开通一个登陆号。员工通过登陆系统登陆,就可以查看客户信息、自己公司别的人员信息和其他信息,方便自己扩展业务。 房地产客户关系管理系统是选用MVC框架,建立在B/S结构上开发的。房地产客户关系管理系统使用JSP网页语言,Java语言和MySQL来开发房地产客户关系管理系统。关键词:房地产客户关系管理系统;客户关系管理系统;管理系统Design and Implementation of Real Estate Customer Relationship Management SystemAbstract:As Chinas economy becomes better and better, peoples living standards become higher and higher too, the real estate business changes into flourish. As customers become more and more, and the current situation of competitive becomes sharp in the industry, real estate companies need a good system to manage the information of customers, make it convenient to communicate with customer. Using this System, the company can improve their competitiveness. The real estate customer information management system is used for managing the information of customer. It is convenient for employees in real estate companies to view the customer information, communicate with clients timely or actively to improve their business and their own competitiveness. The administrator of system creates a login number. Employees can view customer information, peoples information of their company or other information to facilitate them to improve their business. It follows the MVC framework and is bases on B/S structure to develop the real estate customer relationship management system . The real estate customer relationship management system mainly uses JSP language, Java language and MYSQL to develop the system.Keywords: Real Estate Customer Relationship Management System; Customer Relation Management System; Relation Management System目 录第1章 绪论11.1 课题背景及研究意义11.1.1 课题背景11.1.2 研究意义11.2 开发工具及语言介绍11.2.1 JSP技术11.2.2 Servlet技术21.2.3 MySQL数据库21.2.4 开发工具及运行环境21.3 本文研究内容及主要贡献31.4 本章小结3第2章 需求分析42.1 功能需求42.1.1 房地产客户关系管理系统功能模块42.1.2 房地产客户关系管理系统的子系统42.1.3 系统的用例图结构42.2 性能需求52.2.1 硬件环境52.2.2 软件环境52.3 可行性分析62.4 本章小结6第3章 系统设计73.1 系统的结构划分73.1.1 系统结构图73.1.2 各个子系统的描述73.2 系统的数据层93.2.1 系统中的对象93.2.2 对象之间的对应关系93.2.3 实体关系图93.2.4 数据库中的主要表结构103.3 逻辑层表示层设计133.4 本章小结13第4章 系统实现过程144.1 数据库连接的实现144.2 登陆系统144.3 人员管理系统154.3.1 添加员工154.3.2 修改员工信息174.3.3 查看信息功能174.3.4 修改信息功能184.4 信息管理系统18I4.4.1 客户信息的管理194.4.2 房屋信息管理功能224.4.3 部门信息和公告的管理234.5 本章小结25第5章 关键技术265.1 软件及环境变量的配置265.1.1 JDK的安装配置265.1.2 Tomcat安装和配置265.1.3 Myeclipse安装和配置265.1.4 MySQL和webyog softworks的安装265.2 JSP265.3 Servlet275.4 本章小结28第6章 总结与展望296.1 总结296.2 展望29毕业设计体会30参考文献32英文翻译资料33II第1章 绪论1.1 课题背景及研究意义1.1.1 课题背景从改革开发到现在,中国房地产有了近三十年的发展历史。随着经济的越来越好,地产行业近好几年风生水起。各个城市都在发展房地产。房地产行业竞争开始激烈。随着控制房价的政策出台,房地产公司应该注意维护自己的客户关系,抓住自己的客户,提高自己的竞争力。但是,目前大部分房地产公司客户关系管理混乱,公司业务主要靠发传单等低效率方式发展客户,很容易造成客户的流逝,同时不利于分析业务的质量和分析客户流逝的原因。使用该系统可以从相关信息中,总结问题,提高自己公司的业务能力。1.1.2 研究意义本系统是一个在公司内部用来管理员工和客户关系信息的系统。公司人员可以通过系统了解客户信息、客户的接待情况、公司与客户的交流情况等信息。同时公司员工可以通过系统了解业务信息、公司各部门职能和其他人员信息;这样有利于员工进行自己的业务。当他们有问题或需要帮助时,能通过系统及时解决。同时公司通过系统,分析客户来源等信息,及时通过公告反馈,避免不必要的客户流失和提高公司业绩。通过该系统,公司对客户十分了解,可以避免员工跳槽,导致的客户流失,有利于后续员工接手工作。现在市场上大部分公司很少使用系统进行这些工作。所以,系统有很多的应用空间。1.2 开发工具及语言介绍1.2.1 JSP技术JSP1展开来的全部名字是Java Server Pages,这是一种用来制作动态网页的标准,Sun公司跟好多软件公司一起创造了JSP,但是从根本上看它其实就是一个非常简单的Servlet2程序模型。我们在自己写的超文本标记程序中加入一些Java代码,同时再加入一些JSP标记,这样就编写了一个JSP页面3。JSP程序不是只能在一些程序员指定的平台上运行,编写的JSP程序能够在所有的微软操作系统上运行,也能在其他的非微软操作系统上运行。JSP编写出来的网页并不是静态的,它是动态的,使用JSP的目的还是为了使表示逻辑不再包含在Servlet里面,把它从中剥离出来。运用JSP做很多事,当开发Web的时候,能够编写HTML程序4,也可以编写XML程序,然后再加上JSP程序,我们就可以创造出我们的想要的网页,同时呢我们还可以用JSP程序在我们的网页上编写动态的网页内容,如果不想使用JSP来写动态网页内容,我们也可以用JSP编写的不算太大的脚本。这样我们的网页逻辑会被系统自动包含在JSP标识和我们插入的JavaBeans组件5里面,而且还会被系统自动绑在我们编写的小脚本中,当然这些脚本是在服务器这边运行的。之前也说了网页逻辑结构会被系统包含在JSP标识和我们插入的JavaBeans组件里面,通过这点可以看出,我们在管理和开发Web程序时,可以对JSP网页进行修改,当然也能够使用这个页面,并且还有好处就是对网页内容不影响。JSP有个非常好的特点,那就是它可以在好多地方重新使用相同的组件,这样我们开发Web程序的时候效率就会提高得非常多。当我们看我们编写的JSP程序的时候,我们会很容易地把它当成一个HTML网页,但是当我们懂得它的原理的时候,就会知道它其实是一个Servlet在运行。当我们查看JSP网页的时候,系统就会把JSP的代码文件经过某些措施转换成常见的Java文件,系统在这个Java文件中创建了一个Servlet类,将这个类的数据成员跟JSP的元素绑定在一起。接下来事情就轻松多了,系统会编译这个Servlet类,同时将它送到电脑内存中,再接下来跟所有的Servlet程序运行的过程相同,最后系统将程序的运行结果发到客户端上。1.2.2 Servlet技术Servlet是一种程序,因为在服务器看来他就是个小程序。Servlet是用Java语言编写的,用到Servlet类库还有相关的Java类。自从Servlet被设计出来之后,因为Servlet运行和操作系统没有关系;而且它比较好扩充功能;还有它比CGI更好用;致使使用它的人群快速增加,并且它被当作Java EE应用平台的关键组件来使用。其实质是CGI的替代技术一种。Servlet并不在客户主机上运行,它只是把运行的结果发送给客户主机,所以是动态的。它具有效率高,方便,功能强大等特点 ,很受喜欢。当然Servle不可能是完美的,不是没有缺点。刚开始的时候,业务逻辑和表示逻辑是不分开的。所以用它开发的项目不太好维护。所以后来推出JSP技术。Servlet专门负责业务逻辑,JSP用于实现表示逻辑。使得业务逻辑和表示逻辑的分离,便于网站的维护,减低维护成本。当然JSP和Servlet都可以实现对方实现的效果。之所以两者同时使用是因为:(1) Servlet是服务器扩展并未主服务器提供附加的功能,包括专门的服务实现,如数据的检验、访问的授权、以及其他事务管理。(2) JSP是Web页面6,设计阶段类似于HTML页面的结构。对开发人员要求比较低,只需要具有JSP标签及Java语言基础。于是Web应用程序一般选用Servlet和JSP页面7组合方式实现。本系统也采用这个方式。1.2.3 MySQL数据库在用到RDBMS应用软件时,MySQL是一个很好的选择。MySQL是比较流行使用的关系型数据库管理系统之一。MySQL把有关联的数据放在一个表中,不同关系的数据放在不同的表中,这样提高数据的访问速度和访问方式的灵活性。MySQL是有缺点,但是和Oracle等数据库先比,对它的受欢迎程度并没有影响。对于个人和小企业,MySQL功能足够使用,而且开源,可以大大减低成本。MySQL是使用底层开发语言C和C+写的,能够通过多种编辑器的测试,这样使它可以适应大部分开发平台,能够在大部分操作系统上运行,例如MAC、linux等。大部分语言都有MySQL开发的函数库,它还使用线程技术,这样可以提高CPU的资源利用率。和SQL相比,MySQL的查询方法被大大优化,查询速度大大提高。MySQL可以像应用程序一样单独在操作系统上运行,当作应用程序使用。也可以被其他语言,通过开发接口连接,进行开发。管理工具多样而且支持大部分的编码格式。MySQL在1979年被一个小公司设计,作为一个报表工具。随后MySQL不断更新,功能越来越丰富。目前最新版本是MySQL 5.6.21。1.2.4 开发工具及运行环境适用的操作系统:Microsoft Windows xp,Microsoft Windows 2007,Linux等开发环境: Myeclipse 8.6服务器: Tomcat 7数据库系统: MySQL 5.6.211.3 本文研究内容及主要贡献本文主要是介绍房地产客户管理系统开发的原因和现在市场的状况。把房地产客户关系管理系统使用到的技术和使用的编程工具做了个大致的介绍。分析了房地产客户关系管理系统是否可以实现以及它需要的功能。房地产公司使用房地产客户关系管理系统,可以查看自己公司的客户的基本情况,及时保持客户在自己的手中。同时,公司可以通过这个系统,记录客户接待和客户与公司关系维护的情况。及时把无人接待的客户分配给员工。系统还可以记录客户来源、客户类型、客户状态等。帮助公司分析客户,了解客户需求,帮助决策。员工通过系统及时了解业务相关信息、客户信息,熟悉公司情况。利于员工跟快和更有效投入工作中。系统用的是MVC框架模式,便于系统的维护和管理,更有利于以后系统的升级。系统采用比较流行的JSP语言和Java语言,适用性广。系统采用JSP和Servlet结合的方法功能更全,展示更丰富,调理更清晰。论文的主要章节概括如下:第1章 绪论。介绍现在课题的研究的背景、开发意义、使用到的技术,同时介绍使用的语言和使用的数据库软件,还讲解了系统实现的环境和开发工具。第2章 讲解房地产客户关系管理系统需要的功能;介绍系统的功能,分析它的功能,并论述其可行性。第3章 设计系统,介绍房地产客户关系管理系统的各个模块的功能,数据库表格的组成,房地产客户关系管理系统展示的设计和后台处理程序的设计。第4章 介绍实现房地产客户关系管理系统过程,介绍房地产客户关系管理系统各个模块的实现。第5章 房地产客户关系管理系统的关键技术的介绍,房地产客户关系管理系统用到的软件或者开发环境的配置,房地产客户关系管理系统用到的语言和相关的工具的介绍。第6章 开发设计房地产客户关系管理系统的总结和展望。1.4 本章小结本章主要介绍了房地产客户关系管理系统现在发展的状况和房地产客户关系管理系统意义以及开发其价值。并介绍了论文的主体。第2章 需求分析2.1 功能需求2.1.1 房地产客户关系管理系统功能模块 1)员工和系统管理员登录功能。 2)员工可以查看相关信息,对相关信息的修改等功能。 3)管理员查看员工的信息,对相关信息的修改等功能。2.1.2 房地产客户关系管理系统的子系统系统主要由三个子系统组成,分别为登陆系统、人员管理系统、信息管理系统: 1)登陆系统基本功能如下: 验证登陆人员的信息 2)人员管理系统基本功能为: 添加、删除登录人员修改登录人员信息 3)信息管理系统的基本功能为:客户信息的新建、修改和删除客户来源、与客户交流和其他信息的记录公司房屋的信息的添加、删除等操作公司各部门信息的添加、删除等操作发布公告等功能2.1.3 系统的用例图结构系统中员工的使用的对象有查看客户信息、查看房屋信息、查看员工信息、查看部门信息、查看公告等。员工的用例图如图2.1所示。图2.1员工用例图系统中管理员使用的对象在员工使用对象的基础上,添加了员工信息、添加部门信息、发布公告等对象。管理员的用例图如图2.2所示。图2.2管理员用例图2.2 性能需求2.2.1 硬件环境(1)相对不错的计算机做公司的服务器用,一台可以的计算机,提供数据库服务器的相关功能。(2)相关的应用设备。防止黑客侵入的硬件防火墙。(3)若干台通用计算机,给管理员使用。2.2.2 软件环境l 数据库服务器。1) Windows server 20032) MySQLl Web服务器。1) Windows XP sp32) JDK1.73) Apache Tomcat 7.0l 应用服务器。1) Windows XP sp32) 防止黑客侵入的杀毒软件l 普通客户端计算机。1) Windows XP sp3 此外,其他的计算机也要安装这些东西,用来提高系统安全。同时不让员工随意安装其他工具。这样可以保证房地产客户关系管理系统信息的安全。2.3 可行性分析开发需要的语言总的来说只有Java,因为JSP语言其实就是Java语言写在网页里而已。而且他们都使用了很多年,技术已经发展的很完备了。写到所以从编写技术上看,没有难题。同时,MySQL的功能能够完全满足客户关系管理系统的需求,而且MySQL发展多年,虽然存在不足但是并不影响系统功能。从经济上看房地产客户关系管理系统代码量小,开发环境和开发技术全部免费。前期投入很小,不用担心开发时期资金不足的问题。因为房地产客户关系管理系统是公司内部系统,基本上没有什么后期维护开销。大公司如果连网的话,说不定还可以商业运行。那样维护可能高。但是,和收入相比是值得的。从房地产客户关系管理系统的价值上看,现在很少公司使用系统来管理公司的客户关系。虽然已经有很多类似系统存在,基本上用的都是Excel表格。那些只是其他应用软件的功能。并不专业,而且信息不安全。公司信息没有保密性。从上面三方面看该系统能够完成开发和运营,能够占领市场,有很大的发展前景。2.4 本章小结本章主要探讨了房地产客户关系管理系统的功能需求和其可行性分析。第3章 系统设计3.1 系统的结构划分房地产客户关系管理系统有三个子系统:登陆系统、人员管理体统和信息管理系统。登陆系统:登陆号码和密码的检验。人员管理系统:把新员工的信息添加的数据库中、删除系统中的员工的信息和修改系统中已有的员工的信息等。信息管理系统:客户信息的新建、修改、删除;客户来源与客户交流和其他信息的记录;公司房屋的信息的添加、修改、删除;公司各部门信息的添加、删除等操作;发布公告等功能。3.1.1 系统结构图地产的客户关系管理系统主要是记录客户的相关信息。如:客户资料,和客户交流的信息,公司为了维护和客户关系相关的措施和方法的记录,公司人员资料,公司部门信息,发布公告。房地产客户关系管理系统与三个子系统及关系如图3.1所示。 图3.1系统总体功能框架图3.1.2 各个子系统的描述1) 登陆系统系统的登陆系统验证登陆人员的登陆信息,这样的话,既可以保证系统的安全,还可以保密系统的信息。登陆系统如图3.2所示。图3.2登陆系统结构图2) 人员管理系统人员管理系统用来管理房地产客户关系管理系统人员相关的东西。客户信息管理员和员工都可以添加,但是登陆人员的账号只能有管理员才能开通。他们都可以更改客户的信息,但是员工只能更改自己负责的客户信息,管理员可以更改任何用户信息。管理员可以更改登录人的资料信息。同时,自己可以更改自己的信息。员工可以删除自己负责的客户的资料信息。管理员可以删除客户资料信息,也可以删除登录员工的资料信息。人员管理系统如图3.3所示。图3.3人员管理系统结构图3) 信息管理系统信息管理系统的功能比较多。因为这个房地产客户关系管理系统本来就是用来管理各种需要的信息。系统主要相关的信息是客户信息、员工信息、公司部门信息,还有公告。信息管理系统可以对这些信息进行新建,把那些没用的信息删掉和其中的一些进行修改。管理员和员工还应该可以查看这些信息信息管理系统结构如图3.4所示。图3.4信息管理系统结构图3.2 系统的数据层房地产客户关系管理系统必需的数据保存到数据库中。这样可以使房地产客户关系管理系统得数据系统化,而且使房地产客户关系管理系统数据方便管理。任何的系统的数据库都要有稳定性、安全性、健壮性和鲁棒性,来确保系统的运行畅通无阻。3.2.1 系统中的对象1)客户(客户的Id,客户的状态,客户来源,负责客户的员工Id,客户类型,客户姓名,客户性别,客户手机号码,客户QQ,客户地址,客户邮箱,客户备注,客户工作,客户博客,客户电话,客户的MSN,客户出生日期,客户添加时间,添加客户员工,客户信息修改时间,修改客户信息员工,客户公司,标记位)2)公司人员(员工Id,所属部门,权限等级,员工姓名,员工性别,员工电话,员工年龄,员工地址,员工登陆号,登陆密码,员工电话,员工身份证号码,员工邮箱,员工添加时间,添加者,员工信息修改时间,修改人,员工兴趣,员工学历,员工工资卡号,员工民族,是否结婚,标记位)3)部门(部门Id,部门名称,部门描述,标记位)4)信息(信息Id,信息发布者Id,信息主题,信息内容,信息发布时间,信息截止时间,标记位)5)房屋(房屋Id,房屋类型,员工Id,房屋地址,房子价格,房屋描述,标记位)3.2.2 对象之间的对应关系 房地产客户关系管理系统中有客户、公司人员、部门、信息和房屋五个对象。员工可以管理客户发布信息;员工可以查看客户、公司其他人、部门、房屋、等信息;管理员同时可以给该有些信息。人员又隶属于部门。所示员工和客户的关系是使用关系;员工对部门是属于关系;部门对员工是使用关系;员工和信息的关系是使用关系;员工和房屋的关系是使用关系。3.2.3 实体关系图系统中的实体有五个:员工、部门、客户、信息、房屋。员工隶属于部门,但员工又可以行驶部门的权利。所以员工对部门来说是属于关系,部门对员工来说是使用关系。同理,客户对员工来说是使用关系,信息对员工来说是使用关系。房屋对员工来说也是使用关系。实体之间的关系如图3.5所示。图3.5实体之间关系图3.2.4 数据库中的主要表结构系统所需要的数据库表格如下所示:表3.1 客户的数据库表格如下(customer)字段字段的说明数据的类型约束条件备注customer_id客户的Idint(10)PRIMARYUniquecondition_id客户的状态int(10)source_id客户来源int(10)user_id负责客户的员工Idint(10)type_id客户类型int(10)customer_name姓名varchar(50)customer_sex性别varchar(10)customer_mobile手机号码varchar(20)customer_qq客户QQvarchar(20)customer_address客户地址varchar(500)customer_email客户邮箱varchar(100)customer_remark备注varchar(1000)customer_job客户工作varchar(100)customer_blog客户博客varchar(100)customer_tel客户电话varbinary(20)customer_msn客户的MSNvarchar(50)birth_day客户出生日期timestampcustomer_addtime客户添加时间timestampcustomer_addman添加客户员工varchar(50)customer_changtime客户信息修改时间timestampchange_man修改的员工varchar(20)customer_company客户的公司varchar(50)is_used标记位varchar(10)表3.2 公司员工数据库表格如下(user)字段字段的说明数据的类型约束的条件备注user_id员工Idint(10)PRIMARYuniquedepartment_id部门int(10)role_id权限等级int(10)user_name姓名varchar(50)user_sex性别varchar(10)user_mobile电话varchar(20)user_age年龄int(10)user_address员工住址varchar(500)user_num员工登陆号varchar(100)user_pw密码varchar(50)user_tel员工的电话varchar(20)user_idnum员工身份证号码varchar(20)user_email员工的邮箱varchar(100)user_addtime员工添加时间timestampuser_addman添加者varchar(50)user_changetime员工信息修改时间timestampuser_changeman修改人varchar(50)user_intest员工的兴趣varchar(1000)user_diploma员工的学历varchar(20)user_bankcard员工工资卡号varchar(20)user_nation员工所属民族varchar(20)is_married是否结婚varchar(10)is_used标记位varchar(10) 表3.3 部门数据库表格如下(department)字段字段的说明数据的类型约束的条件备注Department_id部门Idint(10)PRIMARYUniqueDepartment_name名称varchar(50)Department_desc描述varchar(500)Is_used标记位varchar(10)表3.4 信息数据库表格如下(information)字段字段的说明数据的类型约束的条件备注notice_id信息Idint(10)PRIMARYUniqueuser_id信息发布者Idint(10)notice_item信息主题varchar(100)notice_content内容varchar(2000)notice_time信息发布时间timestampnotice_endtime信息截止日期timestampis_used标记位varchar(10)表3.5 房屋数据库表格如下(house)字段字段的说明数据的类型约束的条件备注house_id房屋Idint(10)PRIMARYUniquetype_id房屋类型int(10)user_id员工的Idint(10)house_address房屋地址varchar(500)house_price房子的价格int(20)house_ambient其他信息varchar(1000)is_used标记位varchar(10)表3.6 客户状态种类数据库表格如下(condition)字段字段的说明数据的类型约束的条件备注condition_id状态Idint(10)PRIMARYUniquecondition_name状态名字varchar(50)condition_explain状态解释varchar(1000)is_used标记位varchar(10)表3.7 员工关心客户的数据库表格如下(care)字段字段的说明数据的类型约束的条件备注care_id状态Idint(10)PRIMARYUniquecustomer_id顾客Idint(10)care_theme关心主题varchar(50)care_way关心方式varchar(50)care_time关心时间timestampcare_remark备注varchar(1000)care_nexttime下次关怀时间timestampcare_people关怀人varchar(50)is_used标记位varchar(10)表3.8 联系人数据库表格如下(linkman)字段字段的说明数据的类型约束的条件备注linkman_id状态Idint(10)PRIMARYUniquecustomer_id顾客Idint(10)linkman_name关心主题varchar(50)linkman_sex关心方式varchar(20)linkman_job关心时间varchar(100)linkman_mobile备注varchar(20)linkman_age下次关怀时间int(10)linkman_relation关怀人varchar(50)is_used标记位varchar(50)3.3 逻辑层表示层设计在本客户关系管理系统中,Java Servlet 负责系统业务逻辑9。当用户发送请求时,服务器先查看有没有相应的可以行文件,如果没有则编译相应的Java Servlet,然后运行可执行的文件。其他情况下,系统会报错。JSP负责系统的页面展示。JSP和Servlet的使用把房地产客户关系管理系统的表示逻辑和业务逻辑相分离,这样提高代码的可读性,有利于系统的后期维护。3.4 本章小结本章对房地产客户关系管理系统的功能模块做了简要的介绍,并且详细介绍了系统的数据库表格。第4章 系统实现过程4.1 数据库连接的实现连接数据库的代码如下:String url = jdbc:mysql:/127.0.0.1:3306/crm? user=root&password=password;/ 加载连接MySQL的数据库驱动Class.forName(com.mysql.jdbc.Driver);/ 获取到MySQL数据库的连接Connection con = DriverManager.getConnection(url);return con;4.2 登陆系统登陆系统功能可以检测登陆员工的信息,保证系统的安全。并且,登陆系统提供登陆出错处理。系统登陆界面是使用JSP写的。登陆账号和密码的校验是写好的Servlet进行校验,校验代码如下:request.setCharacterEncoding(utf-8);/设置网页的编码格式 为utf-8格式否则可能会出现不必要的乱码String userNum=request.getParameter(userNum);/得到userNum的值String userPw= request.getParameter(userPw);/得到userPw的值LoginService service=new LoginServiceImpl();/定义一个LoginService的类UserInfo userInfo=new UserInfo();/定义一个UserInfo的类userInfo.setUserNum(userNum);/设置userinfo类中userNum的值List list =service.query(userInfo);/定义一个list并对其初始化list.add(userInfo);/在list中添加一个userInfo数据UserInfo userInfo2 =service.getAllList(userNum);/再申请一个UserInfo类并初始化request.getSession().setAttribute(userInfo2, userInfo2);if(userPw.equals(list.get(0).getUserPw() /if判断语句看输入的登陆名和密码是否匹配request.getRequestDispatcher(/view/frame/main.jsp).forward(request, response);else response.sendRedirect(./login.jsp?error=yes); 员工或者管理员输入正确的账号和密码后。能够登陆系统。系统登陆界面如图4.1所示。图4.1登陆界面图密码和账号输入错误时,登陆失败界面如图4.2所示。图4.2登陆失败提示图 正确登陆后,系统界面如图4.3所示。图4.3登陆成功界面图4.3 人员管理系统4.3.1 添加员工管理员在功能栏的下面可以选择添加员工。Servlet代码如下: 把员工信息添加到数据库,代码:UserService dao=new UserServiceImpl();boolean mark=dao.add(us);if (mark)request.setAttribute(info, 员工添加成功);elserequest.setAttribute(info, 员工添加失败);request.getRequestDispatcher(/view/user/user_save.jsp).forward(request, response); 添加员工时,输入信息是不是符合要求是使用JavaScript写的代码进行检验的。这样可以节省客户端访问服务器端的时间,也可以减轻服务器端的业务压力。JavaScript代码其中的一部分如下: 比较简单的数据直接编写代码校验即可,邮箱之类有规律可循的数据使用正则表达式来判断。代码如下:function checkEmail(obj)if(obj.getAttribute(can_empty)=Y & obj.value.length=0) return true;return(/(.w-)3,(w-)2,(.(w)2,4)1,$/.test(obj.value);function checkIDCard(obj)if(obj.getAttribute(can_empty)=Y & obj.value.length=0) return true;if(obj.value.length=15)return(/(0-9)15,15$/.test(obj.value);if(obj.value.length=18)return(/(0-9)17,17(0-9xX)1,1$/.test(obj.value);return false; 检查字符串的代码其中一部分:function checkFloat(obj)var tempArr = new Array(true,);if(obj.getAttribute(can_empty)=Y & obj.value.length=0) return tempArr;if(!(/(-)0,1(0-9)1,(.)0,1(0-9)0,$/.test(obj.value)tempArr0=false;tempArr1= obj.getAttribute(check_str) + 不是合法的实数,请重新输入!;return tempArr;添加员工的界面,如图4.4所示。图4.4添加员工界面图管理员输入信息有误时,错误提示如图4.5所示。图4.5错误提示图4.3.2 修改员工信息管理员和员工修改信息方式一样,代码基本相同。保存修改信息代码如下:UserService dao=new UserServiceImpl();boolean mark=dao.update(us);if (mark)request.setAttribute(info, 员工修改成功);elserequest.setAttribute(info, 员工修改失败);request.getRequestDispatcher(/view/user/user_save.jsp).forward(request, response);员工修改自己信息页面如图4.6所示。图4.6用户修改自己信息页面图管理员登陆成功后,可以修改员工信息。代码和图和员工修改自己信息一样。4.3.3 查看信息功能员工和管理员查看信息代码如下:String userName = request.getParameter(userName);String queryType = request.getParameter(queryType);/业务逻辑UserService service =new UserServiceImpl();/根据条件查询员工信息List list = service.getList(userName,queryType);/存放到requestrequest.setAttribute(list, list);/转发request.getRequestDispatcher(/view/user/user_list.jsp).forward(request, response);管理

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论