- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Java Socket及数据库连接池农业监测系统
基于Java Socket及数据库连接池农业监测系统
摘 要:通过基于Java Socket的农业监测系统及其相关应用,农业生产者可以通过Web得到实用性强的数据,从而对农作物进行有效控制。该系统结合Socket通信和数据库连接池来进行数据存储,可以使系统的知识库能适应网络环境的应用和分布式处理,并具有较好的移植性和扩展性。
关键词:农业监测系统;应用;Socket通信;数据库连接池
中图分类号:TP311 文献标识码:A 文章编号:2095-1302(2016)02-00-02
0 引 言
充分利用农业监测系统采集点多的优势,建立Web平台的农业监测系统是解决我国农业问题的一条切实可行的便利途径。将节点接入系统后,再加入安全性验证,保证双方数据安全并使得数据实时刷新。系统采用 TCP标准Java实现,完成服务端和客户端的信息传输,同时通过连接池访问数据库,实现了C/S模式经典三层架构,从而使得系统更易使用和安全。该平台服务器端架构于Windows 7系统下,数据库采用MySQL。
1 TCP 协议原理
TCP/IP是一组不同的协议组合在一起构成的协议簇[1],通常称该协议簇为TCP/IP。TCP和UDP是信息传输的两个主要协议。TCP是面向连接的服务,若要传输数据,应先构建可靠连接通道,而后终端计算机通过这条通道来传输数据。使用TCP传递数据之前,终端之间应先创建连接[2],实现可靠信息传递。对于传输前不需要构建连接的UDP协议,传输时不需要等待主机任何响应,也不能保障数据的安全,数据传递是不可靠的。基于可靠性数据传输考虑,系统通过TCP协议达到信息安全传递的目的。
2 TCP 实现Java Socket通信
Java不仅跨平台,同时支持多线程,而且还自带验证方法,从而提高了代码的安全度,故系统运用Java开发。Socket俗称套接字,作用于进程间,一般包含终端计算机名、目标端口、标准约定名,用以表示网络上的两个目标主机,即每个终端含有Socket,同时在两终端间构建了虚“通道”,实现稳定连接。涉及网络开发的Java类大都存放于网络包里,它运用以TCP协议作为标准的Socket类[3]和Server Socket类创建“通道”。当前客/服模式是网络通信的经典结构。
2.1 Socket客户端套接字
运用Socket类可研发客户端应用,它可自主请求服务器,以public Socket(InetAddressaddress,intport)throws IOException方法构造Socket对象,它创建了同目标计算机的连接。
2.2 ServerSocket服务器端套接字
服务器端ServerSocket类可监听和处理连接请求,获取数据[4]后,返回对应结果。服务器端指定本地计算机8888端口,若创建服务器端失败,则会捕获非正常情况。
调用ServerSocket.accept()监听Socket连接请求,同时做出连接响应,该响应显示了两终端连接[5],终端间运用Socket对象进行信息传输。但调用accept()会阻塞运行线程,Server端只有收到客户端连接请求,才会给出对应结果。
若服务器端要适应客户端的并发请求,一般有两种方式:(1)服务器端循环给多个用户做出响应;(2)服务器端并发处理客户端请求,该方式要求多线程实现。系统以并发多线程方式工作,通过实现Runnable接口来实现多线程,即每一个客户端请求启动一个服务器端线程,其工作原理如图1所示。
2.3 Socket通信过程
构建Socket通信过程的步骤如下:
(1)构造对象ServerSocket并指定目标端口,创建Socket类作为客户端。
(2)使用accept()方法监听连接请求。
(3)使用getInputStream()和getOutputStream()方法来获得输入流和输出流。通讯两端依据约定获取数据,从而达到信息传递的目标。
(4)结束传输后,用close()关闭两端连接。
Socket交互过程工作原理如图2所示。
3 连接池工作原理
以往,开发人员运用jdbc[6]构建数据库连接。但是在使用了jdbc连接的项目中,当请求较少时,数据库还能较好运行,若存在大并发请求时,就会降低整个系统的性能。故系统采用连接池访问数据库。传统jdbc连接数据库过程如图3所示。
在使用连接池前,会先构建较多连接存放在内存中供之后使用。连接池的运作方式是:首先向数据库请求多个Connection,放置于池内,等待其它人构建连接,结束后返还给连接池,连接不会销毁,使得应用和数据库之间获得更多连接数。它允许应用多次采纳现
您可能关注的文档
最近下载
- 高速公路路基石方爆破专项施工方案[优秀方案].pdf VIP
- 电力工程质量管理制度.pdf VIP
- 空气和氧气(考点讲义)-中考化学一轮复习(全国通用).pdf VIP
- 重庆某高速公路合同段500KV超高压电塔及输电线路下路基爆破施工防护方案.pdf VIP
- 公顷的认识 课件.ppt
- 新版青岛版三年级上册数学全册教案教学设计含教学反思.doc
- 临近高速公路石方爆破施工防护方案模板.doc VIP
- 在党的建设工作领导小组会议上的讲话.docx VIP
- 2025-2026学年小学数学三年级上册(2024)青岛版(五四制)(2024)教学设计合集.docx
- 一年级数学思维训练题100套x.pdf VIP
原创力文档


文档评论(0)