版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河北农业大学本科毕业论文(设计)题目:基于java的网络聊天室--服务器端目录TOC\o"1-3"\h\u148311绪论 2146001.1背景及意义 1205921.2研究现状 1292602系统分析 386842.1实现技术 3110462.2系统分析 6283系统设计 7175353.1系统功能结构 7117653.2系统业务流程 831723.3系统实现原理 893653.4模块化设计 9301323.5数据库设计 9227063.6开发环境与运行环境 106033.7客户端结构 10195593.8服务器端结构 1172624系统实现 11226784.1新用户注册模块 11154244.2登录模块 13128624.3消息通信模块:与显示的在线好友间通信 15285474.4服务器端 1749655总结 2210331参考文献 2327796致谢 231绪论1.1背景及意义网络通信在当今信息社会中起着不可或缺的作用,人们可以利用网络通信技术进行即时的信息交流。比如QQ聊天工具,它就是利用网络通信技术开发的一款众所周知的网络聊天工具。目前,信息交流是互联网提供的主要内容,网络通信系统有多重实现方式,类似ICQ属于一种点对点的聊天系统;还有一种是基于Socket的集中式聊天系统,这种聊天系统需要登录统一的聊天服务器。当今主流的聊天工具有QQ,ICQ,MSNMessage等,国内最热门的当属QQ,腾讯QQ是由深圳市腾讯计算机系统公司开发的,基于Internet的即时寻呼软件。您可以使用QQ和好友用户进行交流、信息即时发送、即时回复、收发即时,功能全面。QQ支持显示朋友在线信息、即时传送信息、即时交谈、即时发送文件和网址。网络聊天以成为上网族的一种普遍的休闲方式,可以毫不夸张的说,全国的网民中没人不知道QQ聊天软件,所以,一款好的即时通信聊天软件成了上网的必备工具之一。网上有很多的聊天软件可供网民们选择,各有不同的特点和长处,可满足不同人的各种需求。局域网聊天工具,是在局域网内部使用的,用户之间用来交流的一个工具,一般都具有文本聊天和文件传输功能。局域网聊天软件因其使用简单,系统资源消耗少等优点,成为各企事业单位等的局域网内广泛应用的软件之一。1.2研究现状目前国内外做聊天系统的公司很多,产品也琳琅满目,国内有诸如腾讯QQ、新浪UC等,国外有著名的MSN等。本人取最具代表性的QQ和MSN进行了一些研究,作为我开发聊天系统的准备。腾讯无疑是国内即时通讯市场的霸主,自从99年进入即时通讯领域并迅速占市场之后,其在国内用户数量始终高居榜首,即使近几年面对微软MSN的强大攻势,腾讯QQ的时常占有率依然稳步增长。腾讯的成功与其对QQ的不断创新和完善是分不开的。参考了许多网络上的资料,以及自己通过观察腾讯QQ运行时的各种细节。可以确定腾讯QQ是以多服务器提供服务、服务器总控客户端、客户端之间UDP直连通信的。并且在两个客户端之间不能建立直连的情况下,才由服务器进行中转通信。其模型如图1.1:图1.1腾讯QQ服务器-客户端模型与腾讯QQ不同,微软的MSNMessenger只使用了TCP作为传输层通信协议,所有客户端与服务器进行连接,然后通过与服务器的TCP连接进行中转通信。其模型如图1.2:图1.2MSN服务器-客户端模型腾讯使用的模型中,服务器主要处理客户端各种状态的控制,可以极大减轻服务器的处理压力,但其内部协议和实现复杂度都较高。而MSNMessenger所有数据都要经过服务器,服务器压力可想而知(难怪平时很少见到使用MSN进行语音视频聊天的)。2系统分析2.1实现技术2.1.1Java语言Java,是一种可以撰写跨平台应用软件的面向对象的程序设计语言,由Sun公司的詹姆斯·高斯林(JamesGosling)等人于1990年代初开发。它最初被命名为Oak,目标设置在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是改造了Oak,在1995年5月以“Java”的名称正式发布了。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。Java编程语言的风格十分接近C++语言,Java继承了C++语言面向对象技术的内核,舍弃了C++语言中容易引起错误的指针(以引用取代)、运算符重载(operatoroverloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间。在JavaSE1.5版本中Java又引入了泛型编程(GenericProgramming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。Java不同于一般的编译运行计算机语言和解释执行计算机语言。它首先将源代码编译成字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,这同时也在一定程度上降低了Java程序的运行效率。但在J2SE1.4.2发布后,Java的运行速度有了大幅提升。与传统程序不同Sun公司在推出Java之际就将其作为一种开放的技术。全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。“Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。Sun公司对Java编程语言的解释是:Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。Java语言有以下特点:简单(Simple):指的是去除了C/C++中较少使用或可能不安全的功能,例如指标,运算子重载,多重继承等。物件导向的(Object-oriented):利用OOP的三种基本特性:PIE(多型,继承,封装),来设计出可重複使用的元件,使系统有弹性易于维护。网路的(Network-Savvy):提供容易使用的API来撰写网路程式。直译式的(Interpreted):bytecode在JVM上执行时,JIT负责转换为机器码。稳健的(Robust):捨弃了对记忆体的指标运作。安全性(Secure):资源回收处理(GarbageCollection)由JVM自行作记忆体管理,例外处理(Exception)可预防突发错误的产生。结构中立(ArchitectureNeutral):程式执行在虚拟机器上。可携的(Portable):Writeonce,runanywhere指的是由JVM与不同的作业系统沟通。高效率的(HighPerformance):利用HotSpot,JIT技术改善效能。多执行绪的(Multithreaded):Java程序可发出多隻并行的轻量化行程。动态的(Dynamic):Java程式执行时动态的连结类别库。Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(JavaEnterpriseAPIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。2.1.2Java与InternetJava语言取得成功的领域之一就是网络(其他语言)数页代码>(Java)一条语句。
TCP/IP(传输控制协议/网间协议)是internet的主要协议,定义了计算机和外设进行通信所使用的规则(应用层,传输层,网络层,链路层)。大多数基于internet的应用程序被看作TCP/IP协议的上一层,如:ftp,http,smtp,pop3,telnet,nntp等。
IP地址:TCP/IP网络中的每台计算机都有唯一的地址--IP地址。在Java中,有一个用来存储internet地址的类叫InterAddress。Java提供的网络功能有三大类:URL,Socket,Datagram。1、URL是三大功能中最高级的一种,通过URLJava程序可以直接送出或读入网络上的数据。2、Socket是传统网络程序最常用的方式,可以想象为两个不同的程序通过网络的通信信道。3、Datagram是更低级的网络传输方式,它把数据的目的纪录在数据包中,然后直接放在网络上。2.1.3Socket编程1)TCP/IP协议TP/IP(TransmissionControlProtocol/InternetProtocol)是传输控制协议/网际协议的缩写,TCP/IP是当今网络互联的核心协议。TCP/IP协议是聊天工具在建立连接下使用的协议,该协议是网络中使用的通讯协议,包括传输控制协议和网际协议,TCP/IP协议是网络互连的标准协议,可使不同环境下不同节点之间彼此通信,是连入互联网的所有计算机在网络上进行各种信息交换和传输所必须采用的协议。2)TCP/IP协议进行传输数据传输的过程应用程序为了传输数据会调用TCP,将数据和对应的参数传给TCP,将TCP数据包封装在IP包内,通过网络送给目的TCP。接收方TCP在接收到数据后通知上层应用程序,TCP将保证接收数据的正确性。在实现TCP的主机上,TCP可以被看成是一个模块,和文件系统区别不大,TCP也可以调用一些操作系统的功能,TCP不直接和网络打交道,控制网络的任务由专门的设备驱动模块完成。TCP只是调用IP接口,向TCP提供所有TCP需要的服务。3)端口号有的时候,一个ip地址不能完整的标识一台服务器,这是应为一台物理性的计算机同时运行着多个应用程序,这就需要我们来区别同一台机子上的不同的服务,所以就在传输层和应用层上设置接口,就是端口。端口实际是一个16位长的地址,它的范围是0~65535之间,其中0~1023是熟知端口,主要是给提供服务的应用程序使用,这些端口是所有应用进程都知道的,1024~65535为一般端口,也称动态端口、连接端口,用来随时分配要求通信的各个客户端应用程序。在数据传输过程中,各种服务器不断的检测分配给它的端口,一边发现要求和它通信的客户端。4)Socket通信机制Socket,简称套接字,用于实现网络上客户和服务器之间的连接。也就是说网络上两个或两个以上双工方式通信的进程之间总有一个连接,这个连接的端点称为套接字,套接字是在比较低的层次上通信的。Socket所完成的通信时一种基于连接的通信,即在通信开始之前先由通信双方确认身份并建立一条专用的虚拟连接通道,然后他们通过这条通道传送数据信息进行通信,当通讯结束时再将原先所建立的连接断开。Socket程序的工作过程:1、建立Socket连接:在通信开始之前由通信双方确认身份,建立一条专用的虚拟连接通道。2、数据通信:利用虚拟连接通道传送数据信息。3、关闭:通信结束时,再将所建的虚拟连接断开。三次握手:第一次握手:原主机发送一个带有本次连接的序号的连接请求。第二次握手:目的主机收到请求后,如果同意连接,则发回一个带有一个本次连接序号和源端机连接序列号的确认。第三此握手:源端机收到含有两次初始序列号的应答后,再向目的主机发送一个带有两次连接的序列号的确认。具体过程如下:主机A主机BACK=1,SYN=1,SEQ=aaaaaaaaaaACK=1第一次握手,主机A向主机B发送连接请求第二次握手,主机B收到主机A的请求,向主机A回发一个确认,,同时向主机A发送一个连接请求ACK=1,SYN=1,SEQ=aaaaaaaaaaACK=1第一次握手,主机A向主机B发送连接请求第二次握手,主机B收到主机A的请求,向主机A回发一个确认,,同时向主机A发送一个连接请求第三次握手,主机A收到主机B发送的数据包在向主机B发送一个确认连接SYN=1,SEQ=图2.1三次握手图2.2系统分析2.2.1可行性分析经济可行性:开发此网络通讯系统所需的硬件和软件环境(Myeclipse开发工具;数据库SQLServer),可以从相关网站免费下载。操作可行性:此通信系统具备友好的用户界面,使用方便,快捷,操作简单易于维护,易于被用户接受,用户只需熟悉操作计算机,和对此系统做简单的了解可方便使用。技术可行性::Java技术日趋成熟,java的平台无关性使得用java的应用程序不用修改就可在不同的软硬件平台上运行,它支持数据分布和操作分布着两种分布性。Java提供了一整套网络类库,开发人员可以利用类库进行网络程序设计,方便实现java的分布式特性。另外java还支持多线程。Java提供了一个类thread,由它负责启动、运行、终止线程,并可检查线程状态。利用java的多线程编程接口,开发人员可以方便的写出至此后多线程的应用程序,提高程序执行效率。开发软件环境:winxp,Sqlserver,Myeclipse。2.2.2系统功能需求分析根据用户对聊天工具的要求,可分为以下几点:(1)操作简单方便、界面简洁美观;(2)可以在局域网实现文字和文件的传输;(3)可以实现用户的注册、登录和注销;(4)程序启动之后就能看到当前哪些用户在线,哪些可以与之进行对等通信。可以实现局域网聊天;(5)一旦有某个网内的机器上线或下线了,要有即时通知,并能及时更新用户界面中的用户列表;(6)当单击用户列表项的时候,直接在聊天对话框聊天,发送聊天信息;(7)当有远程用户向本机发送文件的时候,弹出一个消息提示,用户可选择接收或者拒绝;(8)文件传输过程中,应该有当前传输状态提示,并作为当前网络状态的一种反馈;(9)为用户提供一个简单的聊天记录保存功能。聊天系统包括服务器端和客户端。服务器端的主要任务:服务器端应当建立一个ServerSocket,并且不断进行监听是否有客户端连接或者断开连接(包括判断没有响应的连接超时);服务器端应当是一个信息发送中心,所有客户端的信息都传到服务器端,由服务器端根据要求分发信息。客户端主要完成的工作包括:与服务器端建立通信通道,向服务器端发送信息;接收来自服务器的信息。3系统设计3.1系统功能结构本系统中主要包括两个部分:服务器端和客户端。(1)服务器端的功能包括:验证登录:检查登陆信息是否正确,并向客户端返回登陆信息,如信息正确,就将在线用户发给该用户,并将该用户的状态发给各在线用户,同时在服务器端显示出来。处理注册信息:用户提交注册信息后,自动验证是否重名,如果重名则返回提示,如果不重名则将信息加入数据库。处理用户发送信息:服务器监控聊天内容,服务器过滤非法内容。发布系统消息:将此用户上线、下线消息发给各客户端,并在服务器端显示在线用户信息。保存聊天记录:在接收到用户保存聊天记录申请的同时,自动保存聊天记录为文本文件。保存服务器日志。(2)客户端的功能包括:用户登录:建立与服务器的连接并登录,能显示登录错误信息。用户注册:建立与服务器连接并提交注册信息,注册成功后自动登录。界面显示:登录成功后,自动显示在线用户列表。发送消息:选择要发送对象后,可以发送文本消息或者文件。发送信息时,可以选择私聊,即其他人看不到信息。接收消息:收到其他用户消息后,提醒并显示。接收文件时可以选择接收或拒绝。聊天记录的保存:用户下线前自动向服务器发送申请保存聊天记录。3.2系统业务流程 首先由服务器开启服务,监听局域网中客户端的连接请求,客户端连接后,登录或者处理注册信息,并返回操作结果。客户端注册或者登录成功后,显示聊天窗体,此时各客户端将自主的监听局域网中的用户,实时更新自己的用户列表并显示,各个客户端之间的信息交流不再通过服务器转发,而是自主通信。局域网聊天系统的业务流程图如图所示:客户端客户端聊天窗口TCP/UDP协议发送消息服务器聊天窗口记录所有注册用户和显示当前在线人数发送消息发送消息客户端登录窗口登录验证登录注册判断YY图3.1业务流程图3.3系统实现原理聊天程序一般都是以服务器提供服务端连接响应,使用者通过客户端程序登录到服务器,就可以与登录在同一服务器上的用户交谈,这是一个面向连接的通信过程。因此,程序要在TCP/IP环境下,实现服务器端和客户端两部分程序。客户与服务器之间用TCP协议连接,客户与客户之间通过服务器转发消息.其中用到了Socket,它是介于应用程序与硬件之间,并可以提供标准的函数以符合不同的网络硬件规格。图3.2系统实现原理图3.4模块化设计软件模块化设计方法是从计算机实现的角度出发对整个软件进行审核和校验,将整个系统划分为不同的功能模块,实现软件的一个特定功能。各个功能模块之间具有相对独立性,便于整个软件的设计、实施、维护和扩充。这种模块化结构设计方法,为整个软件顺利进行奠定了基础。3.5数据库设计系统需求主要体现在用户的注册、登录、发送消息、接收消息、聊天记录的保存等方面,而本系统发送消息,接收消息,聊天记录保存均有客户端自主完成,因此不需要体现在数据库中,这样数据库只需存储用户的信息即可。数据库采用sqlserver,,里面建立了2个表,存储用户包含登录账号和密码的用户信息yonghu表,用户发送消息记录的信息表log表。表3.1用户的基本信息表列名custnamecusPasswordagesexemailhead用户名密码年龄性别电子邮箱头像vcharvcharvcharvcharvcharvcharlog表字段:登录用户(id),消息记录,时间3.6开发环境与运行环境开发环境:应用服务器数据库服务器系统:内存2G,硬盘320G运行环境:本系统是用Myeclipse工具开发的,所以首先要安装Myeclipse工具。这次的设计是在windows系统下,要先安装java的jdk来支持Myeclipse的运行。本系统的安装环境为:WindowsXP+JDK1.7+Myeclipse客户端结构客户端用来向服务器端发起一个连接,等待服务器的允许接入确认。若服务器端同意连接请求,接收到服务器的同意连接信号后,开启接收信息线程,并置消息发送事件为Enable,通信双方就可以进行文本聊天了。若服务器端拒绝连接,则释放Socket连接并关闭网络流。若已建立连接,当断开连接时,将向对方发送断开信号,然后将释放Socket和网络流,不影响到下一次连接的发起。ChatClientChatClientLoginWindowsCloseRegisterChatRoom启动客户端窗体监听程序用户注册窗体用户聊天窗体用户登录窗体图3.3客户端结构图ChatClient.java为客户端程序启动类,负责客户端的启动和退出。Login.java为客户端程序登录界面,负责用户帐号信息的验证与反馈。Register.java为客户端程序注册界面,负责用户帐号信息的注册验证与反馈。ChatRoom.java为客户端程序聊天室主界面,负责接收、发送聊天内容等。Windowclose为ChatRoom.java的内部类,负责监听聊天室界面的操作,当用户退出时返回给服务器信息。3.8服务器端结构聊天内容过滤器AppServer聊天内容过滤器AppServerConnectionWordFilterServerFrame服务器监听控制窗体启动服务器监听处理用户请求ServeFrame.java为服务器端程序界面,负责为服务器的启动提供界面服务。AppServer.java为服务器端启动界面,负责监听服务器的状态、在线人数、最多在线人数、服务器名称、访问协议、服务器IP、服务器端口以及用户信息的管理、日志的保存。Connection.java是连接服务器和客户端的桥梁,主要负责将客户端的信息传送给服务器,并将服务器端的信息反馈给客户端,即所谓的“三次握手”,也是Socket编程的重要部分。WordFilter.java负责将聊天过程中不合法的文字语句等过滤掉,返回合法内容。4系统实现4.1新用户注册模块4.1.1注册流程当服务器收到用户注册请求后,开始接收该客户传递的消息,如用户的昵称、密码、性别、头像、个人资料等信息。接收完毕后,服务器通过jdbc与后台数据库连接,向数据库添加记录。注册事件处理是客户端注册的主要部分。Java事件包括键盘事件,鼠标事件和按钮事件,而所用到的是鼠标事件就是点击鼠标时,系统会调用监听器。注册流程图:建立建立连接发送连接请求Socket请求连接信息发送完毕个人信息发送个人信息建立连接接收ServerSocket停止接收接收信息数据库执行数据库添加图4.1注册流程图4.1.2注册界面本界面要填写的项目包括:用户名,密码,邮件地址,需要选择的项目包括:性别,头像。本界面主要负责将用户的信息包装成一个customer对象。注册按钮一旦被点击,就会试图创建一个与服务器端的连接。连接创建成功就会将填写的信息发送到服务器端。图4.2注册界面4.1.3源代码4.2登录模块4.2.1登录界面用户登录首先要与服务器连接,服务器的连接是在Connection类中实现。本界面需要填写的有两个,一个是用户名,一个是密码。在客户端,用户输入用户名和密码,然后建立与服务器的连接,告诉服务器我要登录,服务器收到后,开始通过jdbc读取数据库,然后与用户输入的信息比较,否则返回错误。图4.3登录界面4.2.2源代码4.3消息通信模块:与显示的在线好友间通信凡是聊天工具,都少不了文本聊天功能,这是个基本功能。通过文本聊天,局域网内用户能够发送和接收文字信息,并在程序窗体上显示出来,相互之间进行在线交流,并能根据用户需要,对聊天记录进行简单的保存。文本聊天的信息传输协议主要有面向连接的TCP和无连接的UDP。TCP协议是互联网中最重要的协议之一,主要特点是:保证数据包的准确到达;保证各数据包到达的顺序和数据包发出的顺序相同。UDP协议提供了快速但不一定可靠的传输服务,UDP协议采用无连接的套接字,不需要在网络设备之间发送连接信息,和TCP相比,UDP缺乏双方的握手信号,因此不保证数据包一定到达目的地,可靠性不如TCP,而且,由于UDP没有任何对双方会话的支持,不能保证各数据包到达的顺序与数据包发出的顺序相同。用户需要发送信息时,在聊天内容里写下要发送的信息,然后点击发送就可以发送到其他客户端,也可以选择私聊、聊天表情,聊天信息通过服务器发送到其他客户端。多人在线时,对某个人私聊,而第三个人的聊天界面不会看到私聊信息。图4.4用户聊天窗口4.4服务器端4.4.1服务器端界面服务器端界面主要包含:当前在线人数、服务器名称、服务器IP、服务器端口、用户注册、登录、退出的信息,在线用户列表、发送系统消息等。5总结本文讨论了如何利用JAVA技术开发聊天室系统,基本满足了结构化、界面友好、速度快、安全性以及稳定性等特点。经过了整整3个月的忙碌,终于完成了毕业设计。在这段时间里体验了无数的酸甜苦辣,从解决不了细小问题的苦恼到问题最终解决的喜悦,一直伴随着整个设计过程。整个设计过程是不断学习,不断发现问题、分析问题、解决问题的过程,使我受益良多。设计期间有许多的感触、想法、经验教训,对以后的学习、工作有很大的益处。三个多月的时间,略显仓促,系统各方面做的尚不够完善,但我也收获颇多。我充分认识到开发前的需求分析、框架设计、技术选择等环节是多么重要,如果这些前期工作分析充分、设计良好,考虑周全,将会大大提高开发人员的开发效率,使开发思路更明确,开发过程更简单,同时也可避免一些不必要的错误。反之,若对这些环节草草了事,bug将会层出不穷,业务逻辑异常混乱,造成垃圾代码过多等问题,将会造成许多不必要的麻烦。因此对于业务细节,要多思考,才能减少不必要的bug,增强系统健壮性,易用性,为用户提供更多的便利。本设计在查阅了大量的文献后进行理论研究的同时,借鉴了其他聊天程序的功能、吸取了其他聊天程序的优缺点,在此基础上展开了研究工作,归纳起来,论文取得的成果主要有以下几个方面:通过网络编程,设计了基本的聊天功能。利用TCP/IP协议中的TCP协议,即面向连接的服务,进行数据的传输,对网络中数据的传输过程。参考文献[1]孙一林,彭波.Java网络编程实例.清华大学出版社.2003(4)[2]王鹏.JavaSwing图形界面开发与案例详解.清华大学出版社.2008[3]朱喜福等编.Java程序设计.北京:人民邮电出版社,2005[4]李树青.Java通用范例开发金典.电子工业出版社.2009[5]刘永华,于春花.Java网络编程.清华大学出版社.2008[6]丁振凡主编.Java语言实用教程.北京:北京邮电大学出版社,2005[7][8]/致谢毕业设计完成之际,我由衷地感谢我的指导老师,感谢他对我的鼓励,指导和帮助。在设计过程中,当我遇到不能解决的技术问题,老师都会耐心的予以指导,并提出比较好的建议,这些都使我受益匪浅。我还要感谢大学过程中所有教过我的老师,是他们给了我技术上的知识,让我用知识武装自己,让我用知识去解决问题,解决困难,最重要的是,他们教会了我怎样独立学习,怎样去吸取新知识,不断充实自己。感谢我同组同学,遇到技术难题,我们可以一起讨论,共同解决一个个问题。当然,我们也初选了意见的分歧,但也在完善这个设计课题上。最后,我还要感谢我的父母,在我成长过程中,给予我无私的关爱和呵护,感激之情无以表达,唯有今后更积极地生活,努力地工作,回报他们。目录第一章总论 3一、项目摘要 3二、可行性研究报告编制依据 3三、综合评价和论证结论 3四、问题与建议 3第二章项目背景 3一、项目提出的背景 3二、项目建设的必要性 3第三章建设条件 3一、项目概况 3二、项目建设的有利条件 3三、主要障碍因素及解决方案 3第四章建设单位基本情况 3一、建设单位概况 3二、研发能力 3第五章市场分析与销售方案 3一、市场分析 3二、产品生产方案 3三、销售策略和营销模式 3四、销售队伍和销售网络建设 3第六章项目建设方案 3一、项目建设任务与规模 3二、建设规划与布局 3三、生产技术方案及工艺流程 3四、项目建设标准和具体建设内容 3五、项目实施进度安排 3第七章投资估算与资金筹措 3一、投资估算范围 3二、投资估算的依据 3三、项目总投资及资金筹措 3四、资金使用和管理
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 无边玻璃隔断施工方案(3篇)
- 法律援助-应急预案(3篇)
- 营销方案申请模板(3篇)
- 旗袍营销推广方案(3篇)
- 直播带货广告创意与用户转化优化
- 环卫处2026年工作计划(2篇)
- 移动广告市场分析-第3篇
- 网络文摘版权保护
- 深圳前海湾软土地基沉降预测:模型对比与精准方法构建
- 深入剖析加权遍历定理:理论、证明与多元应用
- 2025年度安徽合肥合燃华润燃气有限公司校园招聘23人笔试参考题库附带答案详解
- 邮政知识考试题及答案
- 《高等机构学(第2版)》课件-第1章-数学基础
- 2024-2025学年河南工业贸易职业学院单招《职业适应性测试》真题及答案详解(夺冠系列)
- 城管执法舆情培训课件
- 2025年青岛市农业农村局所属部分事业单位招聘紧缺急需专业人才笔试模拟试题带答案详解
- 园林绿化项目文明作业及减少扰民保障措施
- 电子电路基本技能训练课件:电子焊接基本操作
- 医院融资计划书民营医院融资计划书
- 文化和旅游部直属事业单位招聘考试真题2024
- 高校融资管理制度
评论
0/150
提交评论