动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.如何在EJB应用程序中使用Spring.
.关于扩展(extended)的rowid的一.
.Java Collections---HashMap深度.
.jakarta-cactus-12-1.7.1.zip.
.“Java Studio Enterprise 7”新.
.EJB应用技术的体系结构详解(1).
.在Java中应用设计模式之Factory .
.Jakarta Commons项目研究--pool.
.常见的十四种Java开发工具及其特.
.Java学习:再探弥补java与com的间.
.EJB3.0开发指南之无状态会话Bean.
.部署描述符(web.xml)元素---[E.
.在组件上显示图象.
.pnews.template模板.
.修正Java中wait方法超时语意模糊.
.值得思考的 J2EE 架构的6个最佳实.
.JBuilder2005创建开发文档之Java.
.Java环境变量定制应用部署.
.漫谈解决Struts分页显示.
.对于log4j的深层次的理解.

基于Java&XML技术构建植物病虫害远程诊断系统

发表日期:2008-1-5 |



  摘要:利用Java&XML技术实现通过互联网对植物病虫害进行远程诊断的功能,介绍该系统的结构、组成、发展方向,为病虫害防治提供服务。
要害词:J2EE,XML,MVC,远程诊断
1.引言
网络服务已经影响到整个社会的方方面面,Web应用程序也变的越来越复杂,近年来,我国农业生产形势发生了诸多变化,生态环境的改变使得新的病虫害开始发生,在植物类产品生产过程中因未能及时诊断病虫害而造成的损失是巨大的,对植物病虫害诊断工作提出了挑战。因此,建立和完善植物病虫害诊断系统是新世纪的一个重要内容,而植物病虫害的远程诊断是智能农业的一个重要技术功能,网络通信技术的快速发展,使植物病虫害诊断技术突破了时空限制。系统通过使用先进的领先技术Java和XML来提供优秀的诊断服务。
在传统的小型jsp应用程序中,数据、业务逻辑和用户界面通常组合在一个代码模块中,应用程序通常还包含用来控制应用程序流程的逻辑,这样由于文件中Html和Java的强耦合,会有逻辑混乱,调试困难等很多问题。本文介绍的植物病虫害远程诊断系统,采用了基于J2EE的分布式应用体系结构和MVC开发模型,是分布在不同地理位置上的数据库与远程诊断系统通过Internet互联在一起。MVC模式将复杂的系统划分为M(model)、V(view)、C(controller)三层结构。MVC模式不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性。MVC模式是目前基于B/S结构开发的最为有效的一种模式。
2.技术背景
J2EE已经成为企业应用开发的标准。平台为创建、部署和治理企业级类应用以及代码的可移植性及重用提供了一个安全的、伸缩的和可扩展的环境。基于它,开发者只需要集中精力编写代码来表达企业应用的商业逻辑和表示逻辑,至于其他系统问题,如内存治理、多线程、资源分布、垃圾收集等,都将由J2EE自动完成。J2EE方案的实施可显著地提高系统的可移植性、安全性、可伸缩性、负载平衡和可重用性。J2EE的发展,让Java语言与MVC模式设计思想达到了完美的结合,使早就提出但一直未能突破语言障碍的MVC模式得以实现。
由Apache组织开发的Struts框架是一个基于J2EE平台的Web应用系统框架,它采用MVC模型规范,结合了Servlet、JSP、JavaBean的技术特点,使这些技术合理分工,紧密配合,达到程序结构清楚,易于开发、维护的目的。Struts的主要部件是一个通用的控制组件。这个控制组件提供了处理所有发送到Struts的HTTP请求的入口点。它截取和分发这些请求到相应的动作类(都是Action类的子类)。同时,控制组件也负责用相应的请求参数填充FormBean,并传给动作类。动作类实现核心业务逻辑,它可以访问JavaBean或调用EJB。最后,动作类把控制权传给后续的JSP文件,后者则生成视图。所有的这些控制逻辑都是利用一个XML文件来配置。
XML与生俱来的可扩展、跨平台、开放的特性无疑与Java相呼应,形成了完美搭档。在Web这样一个公共的、开放的资源平台与计算环境上,Java技术提供了丰富的实现机制;XML为信息的有效治理和数据集成提供了强大的功能,它提供了一种人和程序都能阅读的描述机制。XLST用来把XML文件转换成HTML文件,其中XML信息可由JSP动态生成,通过将数据库中的信息检索转换成XML数据信息增大数据的通用性。
在对数据库的处理时我们采用面向对象的数据持久化技术hibernate,它是现在对数据库处理的一个非常优秀的O/R Mapping(对象关系映射框架)产品,它对JDBC进行了轻量级的对象封装,使Java程序员可以随心所欲的使用对象编程思想来操纵数据库。Hibernate不仅仅治理Java类到数据库表的映射,还提供数据查询和获取数据的方法,主要包括以下几个特点:
1.具有开源和免费的License
2.轻量级封装,避免引入过多复杂的问题,调试轻易,减轻程序员负担
3.具有可扩展性,API开放,当本身功能不够用的时候可以答应自己遍码进行扩展
4.开发者活跃,产品有稳定发展的保障
5.具有丰富的文档资料
6.有成功的项目开发实施案例
7.在开发者当中有良好的口碑
3.系统功能
系统利用人工智能技术,在internet上24小时运转,远程拥护自助生产中的疑难病虫,运行成本低,这也是远程诊断的发展方向。基于对病和虫诊断的不同特点,在推理机上也采用了不同的方法,对害虫的诊断上采用了二叉树推理机,而对病害的诊断采用神经网络推理机。
系统主要包括以下功能:
1. 用户认证。系统所有用户的密码采取MD5算法加密,任何人无法从数据库(或者数据包)中获取到其他人员的密码。
2. 系统治理员对系统的维护,包括对用户的治理和对病虫害数据的填加、更新、删除等操作。
3. 用户对信息的搜索。用户可以通过站内搜索来查找自己需要的信息内容。
4. 推理与诊断。根据用户输入的信息,系统将自动的来推理诊断得出结论,反馈给用户。
系统还有一部分其他的附属功能,但以上是整个系统最为核心的内容。其他功能在此就不再赘述。下面我们以病害诊断为例看一下系统的构成,虫害诊断基本与病害系统构成相同,就是中间的推理机和数据库字段设置不同,以下是病害系统的构成图(图1)。用户通过登陆界面经身份验证确认后进入开始页面,在此页面上就可一步一步的按系统的流程来进行诊断,经远程服务器端推理机推理即可将结果反馈给用户,这样用户不出门就可完成远程诊断,节约了大量的人力、财力,缩短了诊断时间,减少了因病虫害延误而使植物生产中造成大量的损失。在后台我们可以方便的对数据资料进行适时的治理,保证了诊断信息的时效性,使诊断更为客观、真实。

(图1 植物病害远程诊断系统构成)
4.系统设计
在系统的设计中我们实现松耦合,系统里的所有组件都是服务。整个系统采用Struts结构,图2是系统的主体框架设计图,图3为系统的底层结构。

(图2 系统主体框架设计)

(图3 底层结构)
在Model中,用一个表单Bean来保存HTTP请求传来的数据,两个业务逻辑Bean来处理业务逻辑,因为对病和虫的诊断机理不同,所以才用了两个业务逻辑Bean,其中一个为进行二叉树推理,另一个为神经网络推理,只所以分成两个也是尽量的让系统松耦合,随着系统的升级以后可能采用更为先进的准确的推理机,那么到时我们只需更换相应的业务逻辑Bean就可以了,而对别的都不够成影响,这对以后的系统升级无疑是一件很好的事。在系统的推理过程中,势必会有很多的会话信息,这里我们用系统状态Bean来保存跨越多个HTTP请求的单个客户的会话信息。
视图使用JSP建立,用JSP产生XML文件,再由XLST把XML文件转换成HTML文件,然后传送到客户端。
控制器处理所有发送到Struts的HTTP请求。根据对病和虫的不同诊断需求,他截取的请求分发到相应的动作类,负责用相应的请求参数填充FormBean并传给动作类。在动作类通过访问Model中的不同业务逻辑Bean实现核心业务逻辑后,根据动作类的返回值把控制权交给相应的JSP文件,生成试图。
以上是系统的主体框架设计,在系统的开发中是按图一的各个模块来开发,将系统分为前台和后台两部分,在前台也就是客户的登陆和推理界面,然后提供系统的搜索功能。后台则为系统治理员对整个系统的维护功能。在整个系统的开发过程中就是按照系统的主体框架路线和系统的构成图两条线来做的,系统整体层次清楚,结构合理,把各个模块都组件化,使得系统在后续的维护和升级中都变的比较轻易。
5.结束语
系统基于Web及人工智能,可大大缩小“发现??诊断”的时滞。由于在整个诊断过程中需要对大量数据进行传递和处理,而Java和XML的完美组合正使得这一问题得到了很好的解决。系统的松耦合性也使系统以后的升级中得以顺利进行,在升级部分只需更换相应组件即可,而对系统的其他部分没有影响,免去了传统系统升级中的“牵一发而动全身”之痛。
现在信息技术的发展使得远程诊断成为以后的发展趋势,为了保证诊断的准确性和可靠性,我们还需继续利用数据挖掘技术,发现蕴涵在历年病虫害发生的统计数据中的知识和规则,从而为诊断和决策支持提供服务。随着数据量的不端增加,全文的检索速度也慢慢的成为系统的瓶颈,以后将用lUCene来完成对大量信息的全文索引/检索功能,使系统性能更为强大。
参考文献
[1] http://www-900.ibm.com/developerWorks/cn/java/j-strutscol
[2] http://gceclub.sun.com.cn/NASApp/sme/controller/teclist?tid=0102
[3] http://www.hibernate.org/
[4] http://java.sun.com/j2ee/
[5] Stephen Asbury,Scott R.Weiner著.王强 田原 王军等译 《Java企业级应用开发指南》 机械工业出版社 中信出版社 2004
[6] 封传红,廖华明,罗林明,涂建华 病虫生物灾难远程诊断技术探讨 中国植保导刊 2004年第5期
上一篇:基于SWING与AWT小应用程序的区别 人气:670
下一篇:基于java servlet技术的留言簿 人气:566
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-12-2 OpenPNE中文 v2.12.5 for win 中
2008-12-2 谷秋精品课程软件课程版 v2.3
2008-12-2 晴天电影系统(带一键迅雷/自定义
2008-12-2 QQip138闪字程序
2008-12-2 SmartWeb企业智能建站系统 v1.0.2
2008-12-2 梦想不死个人主页 v2009
2008-12-2 开良ASP小偷程序生成器 v1.1
2008-12-2 toolxp.cnalexa世界排名查询 php
2008-12-2 腾讯留言板 v1.3
2008-11-29 Tencent Traveler 4.4
2008-11-29 龙卷风网络收音机 v3.0.0.0
2008-11-29 Intel Chipset Software Install
2008-11-29 TweakVI 1.0 Build 1100
2008-11-29 Opera 9.62 Build 10469
2008-11-29 MPlayer WW编译版 SVN-r28044(20
2008-11-29 NetTools网络工具v1.0.0破解版
2008-11-29 3DGallery三维体验1.1破解版
2008-11-29 SecretBook保密本v1.0破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | OPEN参数生成器 | 弹出式窗口代码产生器 | 密码登录生成器 | 在线按钮生成器 | Meta标签生成器 | 多色彩特效字代码生成器 | 网页代码调试器 | 在线FTP登陆 | Flash取色器 | 配色代码对照表 | 配色辞典 | CSS生成器 | 广告代码 | 框架网页代码生成器 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | 在线调色板 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 元素周期表 | 健康查询 | 世界时间 | 万年历 | 二十四节气 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2009 www.knowsky.com All rights reserved | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成