




免费预览已结束,剩余68页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要食品网站建设摘要近年来,随着国民经济的发展,人民生活要求的变化,人们对饮食的标准也不断的提高与更新,对食品安全的重视程度也越来越高。当前大众对食品信息特别是安全指数的查询需求日益增加。对于网络普及的现代社会来讲,互联网查询成为新兴的重要手段。但通过大型的搜索网站来进行查询,如百度、google 等,其主要是通过关键词来搜索相关的网页、网站及图片。查询的范围较广,查询的精度较低,往往查了半天,也没找到所需的知识。基于此,本组决定综合 JSP,Java 等技术,以 Eclipse、MyEclipse、Tomcat、JDK等工具搭建的 J2EE 开发环境作为开发平台,以 SQL Server 2000 为后台数据库构建一个关于食品信息的网站,向广大用户提供一个特定领域信息交流和查询的平台。关键词食品网站查询JSPSQL Server20001AbstractThe Construction of Food WebsiteAbstract In the recent years, with the development of national economy and the change of requirement of life quality, the standard of the diet is changing and improving. People begin to attach more importance to the food safety. Currently, people demand more information about the food specification increasingly. In the modern society with widespread network, the internet has become a newly significant measure. However, to search through the good-sized website such as baidu, google which provide relevant website and pictures with the key words, it may take people a lot of time to get some inaccurate results. In order to solve this problem, our team decides to combine with technology of JSP, Java and so on, adopting the tools ,such as MyEclipse, Tomcat ,JDK and so on, to build J2EE develop environment as develop platform and using SQL Server 2000 as background database to establish a website related to food information providing a communicating and searching platform for specific field.Key words food websitesearchJSPSQL Server20002目录目录摘要 -1Abstract -2第一章 绪论 -71.1课题背景-71.2本文的研究内容和意义-71.3本文的组织结构-8第二章 相关技术与工具 -112.1相关技术-112.1.1JSP -112.1.2J2EE -122.1.3MVC -132.1.4B/S模式 -152.1.5Javabean -162.1.7JavaScript -162.2所使用的相关工具-172.2.1Eclipse -172.2.2MyEclipse -192.2.3Tomcat -192.2.4SQL Server2000 -202.3本章小结-20第三章 系统的设计 -213.1系统的总体设想-213.1.1系统实现的基本原理 -213.1.2具体实现方法 -213.1.3服务器架构 -223.1.4开发环境 -223.2系统的设计思路-233.2.1程序的设计思想 -233.2.2设计原则 -233.2.3实现目标 -243.2.4采用三层结构设计 -243.2.5采用Browser/Server结构模式 -253.2.6JSP与数据库的连接 -253.2.7JSP中文乱码的解决方法 -263.3本章小结-27第四章 系统的具体实现 -294.1负责数据库连接的JavaBean-294.2查询模块分析-294.3查询模块详细功能设计-304.3.1按食品名称查询模块 -304.3.2按食品条形码查询 -303目录4.3.3 按食品的功能查询 - 314.3.4 按食品的安全指数查询 - 314.3.5 按食品的成分查询 - 324.3.6 按食品价格查询 - 334.3.7 按食品的重量体积查询 - 334.3.8 模糊查询 - 344.3.9 组合查询模块 - 344.4 系统的整合- 374.4.1 首页知识模块划分和超连接构造 - 374.4.2 框架布局 - 394.4.3 模块的整合 - 394.4.4 CSS样式表的应用 - 404.4.5 整合中应注意的问题 - 404.5 本章小结- 41第五章 总结与展望 - 43总结- 43展望- 43下一步工作- 43致谢语 - 45参考文献: - 474ContentsContentsChinese abstract -1Abstract -2Chapter1 Introdution -71.1Background-71.2Contents And Means-71.3Thesis Hierarchy-8Chapter2 Related Technology And Tools -112.1Related Technology-112.1.1JSP -112.1.2J2EE -122.1.3MVC -132.1.4B/S Mode -152.1.5Javabean -162.1.7JavaScript -162.2Related Tools Introdution-172.2.1Eclipse -172.2.2MyEclipse -192.2.3Tomcat -192.2.4SQL Server2000 -202.3Summary-20Chapter3 System Design -213.1The General Idea of The Whole System-213.1.1The Basic Principle Of System Realization -213.1.2Realization Method -213.1.3Server Architecture -223.1.4Development Environment -223.2System Design Mentality-233.2.1The Thought of Procedures Design -233.2.2Design Principle -233.2.3Realization Goal -243.2.4Use Three-tier Structure Design Patterns -243.2.5Structure Model Used Browser/Server -253.2.6Database Connectivity In JSP -253.2.7The Solution of Chinese Distortion In JSP -263.3Summary-27Chapter4 System Implement -294.1JavaBean Is Responsible for Database Connectivity-294.2Query Module Analysis-294.3Query Modul Detail Function-304.3.1Query By Food Name -304.3.2Query By Food Barcode -305Contents4.3.3 Query By Food Function - 314.3.4 Query By Food Safty Index - 314.3.5 Query By Food Constituents - 324.3.6 Query By Food Price - 334.3.7 Query By Food Weight and Volume - 334.3.8 Fuzzy Query - 344.3.9 Combination Query - 344.4 System Integration- 374.4.1 Home Page Knowledge Division and Hyperlinking Structure - 374.4.2 Framework Layout - 394.4.3 Modul Integration - 394.4.4 The Application of The CSS - 404.4.5 The Problem In Integration - 404.5 Summary- 41Chapter5 Conclusions and Perspectives - 43Conclusions- 43Perspectives- 43Further Improvements- 43Acknowledgement - 45References - 476第一章 绪论第一章 绪论1.1 课题背景在人类进入信息时代的今天,人们对信息检索的便利,检索的速度的要求越来越显的十分迫切和重要。而在这里一个好的信息系统就充当了重要的角色,它不但可以让你在铺天盖地的信息浪潮中,准确快速的抓住你所想要的信息,而且为你节省大量的人力资源和宝贵的时间。“民以食为天”。食,已是生活的重要一部分。近年来,随着国民经济的发展,人民生活要求的变化,人们对饮食的标准也不断的提高与更新,对食品安全的重视程度也越来越高。当前大众对食品信息特别是安全指数的查询需求日益增加。在此背景下,对于网络普及的现代社会来讲,互联网成为新兴的重要手段。互联网作为一种先进、迅捷的信息传播媒体,是二十世纪人类社会最伟大的发明之一。目前,网络已经走进了千家万户,成为人们生活、工作、学习中不可或缺的部分。网络共享了资源和信息,改变了我们的生活。人们已经习惯在网上进行交流和收集信息。广大消费者希望从网络中得到自己所关注的食品的安全指数、营养价值等方面具有指导意义的信息,或者是国家的相关法规等;而商家希望及时推广自己的产品以占领市场,仅在中国就拥有 6800 万用户的互联网成为商家眼中树立品牌的一个重要工具。食品网站应运而生,它既为消费者提供信息又为商家发布产品。虽然目前许多食品网站都提供了厂家、产品的信息,可是并没有提供食品安全、营养价值等方面的权威信息,以及不能满足大众对食品信息特别是安全指数的查询需求日益增加。在此背景下,对于网络普及的现代社会来讲,互联网成为新兴的重要手段。但通过大型的搜索网站来进行查询,如百度、google 等,其主要是通过关键词来搜索相关的网页、网站及图片。查询的范围较广,查询的精度降低了,往往查了半天,也没找到所需的知识。因而通过大型的搜索引擎来查询相关食品的信息往往查询的速度较慢,查询的精度较低。基于此,本组决定综合 JSP,Java 等技术,以 Eclipse、MyEclipse、Tomcat、JDK 等工具搭建的 J2EE 开发环境作为开发平台,以 SQL Server 2000 为后台数据库构建一个关于食品信息的网站,向广大用户提供一个特定领域信息交流和查询的平台。1.2 本文的研究内容和意义首先,在食品网站的设计和实现的过程中,将大学四年学习到的知识运用到了实践中。例如该项目使用的开发环境就是以 Eclipse、Tomcat、JDK 等工具搭建的 Java 2 Enterprise7食品网站建设Edition(J2EE)平台。该平台现在已经日趋成熟和稳定,并在许多的商业网站上都得到了应用,而在 J2EE 技术中发展最迅猛的当属 JavaServerPage(JSP)技术。几乎所有基于 Java 的 Web 应用都使用 JSP。其次,通过该项目让我们体验到软件开发的整个流程。从系统架构规划、需求分析、确定系统功能,定义用户角色和权限,划分模块,特定领域数据收集到数据库设计以及代码的编写,再到代码的整合、测试,让我们对软件开发的流程有更加深刻的了解。该项目的开发过程更加是一个让我们不断吸收、学习新技术的过程。该项目综合了现在比较热门和流行的 JSP、JavaScript 等技术,还利用到 JDBC 提供的标准 API 连接数据库。在整个开发过程中,不仅使我们学习并运用了现在热门和流行的技术,还提高了团队合作、实际动手以及自我学习的能力,为将来自身的发展打下了良好的基础并积累了宝贵的开发经验。1.3 本文的组织结构第一章是绪论,主要介绍本论文的课题背景,主要研究内容和意义,本论文组织结构。课题背景主要阐述本次项目开发的研究方向和目的,主要研究内容和研究意义主要简单介绍这个项目所采用的技术,和这些技术的发展方向,对今后这个类型项目开发有何重大意义。第二章是论文的相关技术和工具,主要介绍研发所涉及的知识、技术、工具等。这一章将详细介绍之后开发过程中所用到的知识、技术、工具,以及这些技术的发展方向,重要意义。这些开发技术项目都是现在比较流行的技术和方法,将对这些技术引导到该的应用领域,以及在类似项目开发中特别突出的技术特点,以及现今同类项目开发的流行趋势。第三章是系统设计,主要阐明系统设计与实现,主要包括系统总体设想、系统实现的基本原理、实现方法、服务器架构、框架布局、开发环境、系统的设计思路。该章将着重介绍该系统具体的设计步骤和方法。第四章为系统的具体实现,介绍设计过程所用到的 Javabean,查询模块的流程图和查询功能的各个模块的详细设计。最后介绍系统的整合以及整合中所遇到的问题,一个复杂的系统分为多个比较容易的模块来做,独立的开发这些模块,降低了整个系统开发的难度,当各个模块完成后就把他们整合在一起。第五章为结束语,主要为开发总结,展望,下一步工作的方向。开发总结是对整个开发8第一章 绪论过程的技术总结和感悟总结,阐述技术开发中得到的深刻体会,对今后开发同类型的系统的指导意义。展望是对今后这种类型项目开发的趋势,以及此次项目还存在的缺陷。下一步工作主要介绍本项目还存在的不足之处,投入商业运行还存在的差距,如何进一步完善的方向。9食品网站建设10第二章 相关技术与工具第二章 相关技术与工具以 J2EE 为模型,以 MVC 为架构基于 BS 系统越来越流行。本章将介绍系统设计开发中所涉及到的相关概念和工具。2.1 相关技术2.1.1 JSP计算机技术发展日新月异,在 Web 开发领域相应地出现了 CGI、SSI、ASP、PHP、ISAPI等开发动态网站的技术,它们有着各自的优势,但是这些技术都存在一定的局限性。随着 JSP 技术的出现,这一切的难题都迎刃而解了。JSP(JavaServer Page)是 J2EE 结构中 Web 层组件。它是由 Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页技术标准。该技术为创建显示动态生成内容的 Web 页面提供了一个简捷而快速的方法。JSP 技术的设计目的是使得构造基于 Web 的应用程序更加容易和快捷,而这些应用程序能够与各种 Web 服务器,应用服务器,浏览器和开发工具共同工作。在传统的网页 HTML 文件(*htm,*.html)中加入 Java 程序片段(Scriptlet)和 JSP 标记(tag),就构成了 JSP 网页(*.jsp)。Web 服务器在遇到访问 JSP 网页的请求时,首先执行其中的程序片段,然后将执行结果以 HTML 格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无 Plugin,无 ActiveX,无 Java Applet,甚至无 Frame。JSP 的优点就在于: 一次编译,多次、多处运行,代码的执行效率高JSP 的脚本语言是 JAVA 语言,因此它具有 JAVA 语言的一切特性。同时,JSP 也支持现在大部分平台。 当 JSP 第一次被请求时,JSP 页面转换成 servlet,然后被编译成.calss文件,以后(除非页面有改动或 Web 服务器被重新启动)再有客户请求该 JSP 页面时,JSP页面不被重新编译,而是直接执行已编译好的.class 文件,因此执行效率特别高。组件的重用性可重用的、跨平台的 JavaBeans 和 EJB(Enterprise JavaBeans)组件,为 JSP 程序的开发提供方便,我们可以将复杂的处理程序(如页面中需要显示的动态内容及对数据库的操作)放到组件中。可以多次使用这些组件,极大的减少了在 JSP 页面中重写重复的代码。11食品网站建设将内容的生成和显示进行分离使用 JSP 技术,Web 页面开发人员可以使用 HTML 或者 XML 标识来设计和格式化最终页面。使用 JSP 标识或者脚本来生成页面上的动态内容。生成动态内容的语句一般被封装在 JavaBean 组件、EJB 组件或 JSP 脚本段中。这样,页面的设计人员和页面的编程人员可以同步进行。同时在客户端通过查看源文件,看不到 JSP 标识的语句,更看不到 JavaBean 和 EJB 组件,也可以保护源程序的代码。2.1.2 J2EEJ2EE 的全称是 Java 2 Platform Enterprise Edition,它是由 SUN 公司领导、各厂商共同制定并得到广泛认可的工业标准。业界各大中间件厂商如 BEA、IBM、Oracle 都积极地促进了它的“诞生”、“长大”。J2EE 提供了一种适用于创建服务器应用程序和服务的平台,它是一种利用 Java 2 平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE 技术的基础就是核心 Java 平台或 Java 2 平台的标准版(J2SE),J2EE 不仅巩固了标准版中的许多优点,例如编写一次、随处运行的特性、方便存取数据库的 JDBC API、CORBA 技术以及能够在 Internet 应用中保护数据的安全模式等等,同时还提供了对 EJB(Enterprise JavaBeans)、 Java Servlets API、JSP(Java Server Pages)以及 XML 技术的全面支持。J2EE 使用多层的分布式应用模型,应用逻辑按照功能划分为组件,个个应用组件根据它们所在的层分布在不同的机器上,整个系统分布在三个地方:客户端机器、J2EE 服务器和后端数据库。大多数 J2EE 的系统都分成三层或四层,复杂的系统层次会更多一些。这样的划分,使系统结构十分清晰,每个层次都各尽其责。J2EE 应用是由一个个的组件构成的。组件是一种具有独立功能的软件单元,它可以在 J2EE 服务器中执行,也可以调用别的组件的功能。J2EE 说明书中定义了以下的 J2EE 组件:客户端应用程序和 Applet 是客户层组件;Java Servlet 和 Java Server Page(JSP)是 Web 层组件;Enterprise JavaBean(EJB)是业务层组件。一个 J2EE 的客户端可以是 Web Clients、Applets 或客户端应用程序。Web Client 包括两部分:动态的网页和浏览器。Web Client 简单方便,但不能做复杂的操作。Applet 是一个小的客户端程序,它需要浏览器的 JVM 来执行,可以把一部分的业务逻辑用 Applet 来实现。客户端应用程序提供了更加友好的图形界面的功能,它可以直接调用业务逻辑层中的 EJB,当然,也可以打开一个 HTTP 联接,与 Web 层的 Servlet 通讯。12第二章 相关技术与工具Web 层和业务逻辑层都在 J2EE 服务器上。Web 层的组件可以是 Servlet 或是 JSP。Servlet和 JSP 都用来生成动态网页,它们的主要作用是接受并检验用户输入的数据,把数据传给后端的业务逻辑层,并把业务逻辑层处理的结果返回给用户。业务层代码的逻辑用来满足银行、零售、金融等特殊商务领域的需要,由运行在业务层上的 EJB 来实现。企业信息系统层包括 ERP、CRM、大型机事务处理、数据库系统以及其它的遗留信息系统等。J2EE 体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,J2EE 降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制。2.1.3 MVCMVC 最初是在 Smalltalk-80 中被用来构建用户界面的。M 代表模型 Model, V 代表视图View, C 代表 控制器 Controller。MVC 的目的是增加代码的重用率,减少数据表达,数据描述和应用操作的耦合度。 同时也使得软件可维护性,可修复性,可扩展性,灵活性以及封装性大大提高。通过把数据模式从各种可以被存取和控制的数据中分离出来可以改善分布式系统的设计。MVC 设计模式由三部分组成:模型是应用对象,没有用户界面,视图表示它在屏幕上的显示,代表流向用户的数据,控制器定义用户界面对用户输入的响应方式,负责把用户的动作转成针对 Model 的操作,Model 通过更新 View 的数据来反映数据的变化。三者关系如图 2-1 所示:Model抽象对象功能:封装系统状态管理数据一致性ViewController抽象数据表达:抽象用户和对象的事件映射:表示针对用户的数据根据上下文选择合适视图维护与 Model 一致性显示数据图 2-1 MVC13食品网站建设现在的一些基于 Web 的分布式系统如 B2B 电子商务系统,就适合采用 MVC 架构。通过分析,从高层次的角度可以将一个应用的对象分为三类。一类就是负责显示的对象,一类对象包含商业规则和数据,还有一类就是接收请求,控制商业对象去完成请求。这些应用的显示是经常需要变换的,如网页的风格,色调,还有需要显示的内容,内容的显示方式等。而商业规则和数据是相对要稳定的。因此,表示显示的对象 View 经常需要变化的,表示商业规则和数据的对象 Model 要相对稳定,而表示控制的 Controller 则最稳定。通常当系统发布后,View 对象是由美工,HTML/JSP 设计人员或者系统管理员来负责管理的。Controller 对象由应用开发人员开发实施,商业规则对象和商业数据对象则由开发人员,领域专家和数据库管理员共同完成的。显示逻辑在 Web 层或客户端控制,可以是 Servlet 或 JSP,动态地生成 Html。与控制有关的对象存在于系统的每一个层次,协调跨层动作。包含商业规则和数据的对象存在于 EJB 层(以 EJB 为中心的模式)或 Web 层(以 Web 为中心的模式)。View 在 Web 系统中的应用是这样的:View 代表系统的显示,它完全存在于 Web 层。一般由 JSP, Java Bean 和 Custom Tag 组成。JSP 可以动态生成网页内容,Custom Tag 更方便了使用 Java Bean,而且它可以封装显示逻辑,更有利于于模块化和重用。一些设计良好的 Custom Tag 可以在多个 JSP 甚至可以在不同的系统里重复使用。Java Bean 用来控制 JSP 和 Model 对象。JSP 通过 Java Bean 来读取 Model 对象中的数据,Model 和 Controller 对象则负责对 Java Bean 的数据更新。一般来说,可以先要设计出所有可能出现的屏幕,即用户使用系统时可以看到的所有内容。然后根据这些内容,找出公共部分,静态部分和动态变化部分。可以考虑使用模板方法,把公用的内容单独生成 JSP,需要变化的也各自生成 Html 或 JSP, 由一个模板 JSP, 把这些不同部分动态地引入(include 方法)。还有一个要考虑的问题就是屏幕的选择问题,当处理完用户请求,模板被自动调用来显示,这个显示一定要知道用户关心的屏幕是有哪些部分组成。所以可以考虑把所有屏幕的定义放在一个集中的文件里,如一个 Java 文件或文本文件。由于考虑到屏幕定义文件将来的变更可能性,最好使用文本文件如一个 XML 文件,这样将来更改不用重新编译。可以根据用户输入的 URL 和参数可以映射到某一个结果屏幕,当然有可能还要根据动作的执行结果选择不同的结果屏幕内容。所以需要一个请求与资源的匹配文件(XML),如果一个 URL 请求有几种不同结果,则要在该文件中指明是否需要流控制(一种 controller 对象)以及不同流向的对应屏幕。Model 在 Web 系统中的应用是这样的:Model 对象代表了商业规则和商业数据,存在于14第二章 相关技术与工具EJB 层和 Web 层。在 J2EE 的规范中,系统有些数据需要存储于数据库中,如用户的账号信息(accoun
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论