1、摘要在愈来愈方便的信息世界,万物互联已经成为人类无法阻挡的技术浪潮。移动智能设备的普及,物联网及云计算的发展,使本就越发享受科技红利的人们更加热衷于体验现代技术的奇妙。甚至作为政府主导的危货罐车定期检验报告审核这一系列之前由人工完成并记录的工作,也要向着全网互联,信息上网的趋势发展。本文具体阐释了危货罐车定期检验报告在线审核系统审核员模块的设计与开发。设计采用当前十分流行的JSP网站开发技术并且部署在轻量级开源Web服务器Tomcat之上。JSP是由Sun微系统公司倡导、许多公司共同参与并一起建立的一种动态技术标准。在传统的网页文件中加入Java程序片段和JSP标签,就构成了JSP网页。Jav
2、a程序片段可以操纵数据库、重定向网页以及发送E-mail等,实现建立动态网站所需要的功能。并考虑到网站所处理的数据的结构特点及所学的知识,应用Microsoft公司出品的SQL Server 2008数据库系统作为网站的后台数据库支持。系统实现了网站的基本功能,包括三种类别工作人员的登录、浏览审核信息、查询详情页、个人中心管理及各类人员特殊需求的功能页等。页面美化使用Adobe公司出品的Photoshop CS5及Dreamweaver CS4等网页设计软件完成。关键字:JSP;Web服务器;在线系统 AbstractIn the more and more convenient inform
3、ation world, Internet has become a human cant stop all the technology wave. The popularity of mobile intelligent device, the development of the Internet of things and cloud computing, make the more people enjoy the technology dividends more keen to experience the wonders of modern technology. Even t
4、he government-led, the dangerous cargo tank car inspection report regularly audit completed by artificial and record before this series of work, also want to entire network interconnection, information on the Internet the trend of development.This article explains the dangerous cargo tank car inspec
5、tion report regularly online auditing system auditors module design and development. Design USES the current popular JSP website development technology and deployment on lightweight open source Web server - Tomcat. JSP is advocated by Sun Microsystems company, many companies to participate and to es
6、tablish a dynamic technical standards. In a traditional web page file to join Java program fragment and JSP tags, constitutes the JSP page. Java program fragment can manipulate the database, a redirect page and send E-mail, realize the function needed to build dynamic web site. And considering the s
7、ite and the structure characteristics of the data processing and learned knowledge, application of Microsoft company of SQL Server 2008 database system as the website backstage database support. System realize the basic function of the site, including three categories of staff login page, browse the
8、 audit information, for details, personal center management page and the function of all kinds of special requirements for personnel, etc. Page beautification produced using Adobe Photoshop CS5 and Dreamweaver those such as web design software to complete.Keywords: JSP; Web Server; Online System目录1
9、绪论41.1 课题背景41.2 国内外研究现状41.3 本课题研究的意义41.4 本论文的组织结构42 技术背景42.1 JSP技术简介42.2 SQL Server 2008简介42.3 Web服务器简介42.4 JDBC简介43 系统模块分析43.1 需要完成目标43.2 功能需求43.3 环境需求44 系统整体设计44.1 数据流程分析44.2 数据字典45 功能模块设计45.1 审核员功能设计45.2 数据库设计45.2.1 E-R图45.2.2 基本表设计46 系统实现47 系统测试47.1系统测试远离了及测试原则47.2测试的过程与分析47.3测试小结48 结论4致谢4参考文献41
10、 绪论1.1 课题背景随着网络信息化的高速发展,无论人类的生活,娱乐乃至生老病死等各个方面都将进行数字化。往小里说,人们通过即时通讯软件进行日常交流,通过SNS社交网络了解世界上发生着的事情,通过在线网店购买来自全世界的物品。往大里说,人们的身份信息全国互联,无论你身在何处,都有办法确定你的信息,病人的病历在某种程度上也可以进行在线查询,人们的车辆信息也可以在交通部门查到,只要你愿意,你可以通过各种手段获得一个人的家庭住址,电话号码及生长经历。当然,信息联网是一柄双刃剑,它可以极大方便人类世界,是人类历史上为数不多的几次通过技术改变世界的面貌,这是一个可以用技术来打造的乌托邦,没有什么理论上实
11、现不了的事情。然而,如果被别有用心的人利用,那么信息泄漏不仅仅是道德层面的严重探底,也是科学技术再次威胁人类生存的又一个生动的实例。尽管如此,我们依然相信,技术是用来造福于人类社会的,因此,通过JSP技术标准来实现危货罐车定期检验报告在线审核系统是一件提高办事效率,造福社会的事情。上线的审核系统可以完全实现无纸化办公,减少了纸张的浪费;另外,全数字化操作不容易出现人为的失误,可以在理论上提高审核的精确性;同时,信息全网互联打破了地域性,使得身处外地的办事机构也可以方便查询各个危货罐车的审核情况,甚至在以后,可以直接反馈给货车车主,及时通知车主进行定期检验。现代的网络,已经经历过迅速发展的时期,
12、所以技术也已经相当成熟。因此,依靠网络技术架设一个网站会在很多方面得到相关的支持。伴随着行业需求,危货罐车定期检验报告在线审核系统应运而生,它是车务管理全面的信息化管理解决方案,辅助实现综合运营管理的信息化、智能化、规范化管理。基于以上众多优势,它将广泛运用于危险品审核管理中。1.2 国内外研究现状经过多年的发展,中国电子政务建设在政府网络基础设施、政府门户网站、政府核心业务支撑、公共信息资源开发等方面取得了很大成绩。以此为基础,电子政务发展的重心将逐步从更多关注经济领域转向更多关注社会领域。互联网的发展为政府更好地实现社会管理和公共服务职能创造了条件,一些地方开始制定政务互联网发展规划,更多
13、的地方开展了利用互联网完善公共服务的尝试。近年来,越来越多的地方政府部门开始采用网络、RFID和传感器、GPS监控、视频监控等技术,在城市交通、市政市容管理、水务、环保、园林绿化、食品安全等多个领域实现自动化的监测和管理。随着城市信息化的发展,涌现了一批互联网技术新应用,如市政交通一卡通、高速公路不停车收费(ETC)、水文水质监测、环境质量监测、食品药品溯源等。适应形势发展需要,各地在制定中长期发展规划中都对互联网发展和应用给予了极大关注,一些省份和城市还制定了专门的互联网发展专项规划,纷纷开展互联网应用示范工程。从规划和工程设计的主要内容看,互联网应用已逐渐成为电子政务发展的重要内容。美国提
14、出互联网国家战略,时间就在国际金融危机之后。其实,进入后危机时代,信息通信技术成为各国技术竞争的重要焦点,互联网作为新一代信息通信技术的重要组成部分,是转变经济发展方式的重要引擎,应用意义巨大。总的看来,互联网可广泛应用于经济社会发展的各个领域,其在社会发展、公共服务、城市管理和人民生活中的应用,将有效提升政府管理效能、基础设施和城市管理水平、资源环境利用效率,实现社会公共服务和人民生活的智能化、便捷化、绿色化,推进经济、社会、人和自然的协调可持续发展。互联网的确有着灵敏感知、实时传输和处理信息的优秀“基因”。总体而言,互联网应用已逐渐成为我国电子政务发展的重要内容,但目前我们的应用还处于起步
15、和探索阶段,规范化、体系化、智能化水平仍有待提升。要充分发挥电子政务“智慧神经”的作用,需要我们进一步从业务需求、创新服务、产业培育多方面切实推进互联网的电子政务应用。1.3 本课题研究的意义进一步熟悉JSP开发环境,把握一定开发Web网站的技术。对提高自己的Java语言编程能力,熟悉Web建站工作过程具有重要的研究意义。制作一个界面友好,用户体验良好,稳定实用的危货罐车定期检验报告在线审核系统。对信息的快速共享发挥了重要作用。让用户能第一时间和别人共同分享信息资源。1.4 本论文的组织结构本文分为七章,通过对整个网站的分析、设计与实现过程的全面介绍来展示系统的全部特性。第一章概述描述了课题的
16、背景、目的与意义,介绍了国内外现状,进而总结出此次研究工作的内容。第二章主要阐述了系统设计中的一些相关技术。第三章首先从几个角度分析了系统开发的可行性,阐述了系统在实际应用中的价值,然后进行了需求分析、网站业务流程分析和数据流分析。第四章在明确了系统设计的原则下,进行了功能模块设计,接着对数据库结构进行设计。第五章阐述了系统页面及其逻辑功能的实现,重点描述了前台与后台的各个功能模块的实现过程,对主要的原理和技术进行了详细的说明,并列出了一些典型的逻辑程序流程图进行说明。第六章主要阐释了系统的核心模块的流程及相关代码。第七章介绍了系统的各项调试指标,分析了调试的过程和结果。2 技术背景2.1 J
17、SP技术简介JSP(JavaServer Pages)是由Sun微系统公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入Java程序段和JSP标记,从而形成JSP文件。用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。2.2 SQL Server 200
18、8简介SQL Server 2008 在Microsoft的数据平台上发布,可以组织管理任何数据。可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。可以对数据进行查询、搜索、同步、报告和分析之类的操作。数据可以存储在各种设备上,从数据中心最大的服务器一直到桌面计算机和移动设备,它都可以控制数据而不用管数据存储在哪里。SQL Server 2008 允许使用 Microsoft .NET 和Visual Studio开发的自定义应用程序中使用数据,在面向服务的架构(SOA)和通过 Microsoft BizTalk Server 进行的业务流程中使用数据。信息工作人员可以通过日常使用
19、的工具直接访问数据。该数据库服务是目前主流的企业级中度应用最佳选择。和其他的大型数据库管理系统相比,SQL Server 2008具有可靠的安全性,更快的存储速度,高度的兼容性。因此,应用SQL Server 2008作为后台数据库为系统的开发提供了强有力的支持,并对以后网站的运行打下了坚实的基础。2.3 Web服务器简介Web服务器是可以向发出请求的浏览器提供文档的程序。或者说Web服务器是指驻留于因特网上某种类型计算机的程序。Web服务器也称为WWW(WORLD WIDE WEB)服务器,服务器是一种被动程序:只有当Internet上运行在其他计算机中的浏览器发出请求时,服务器才会响应。最
20、常用的Web服务器是Apache和Microsoft的Internet信息服务器(Internet Information Server,IIS)。Internet上的服务器也称为Web服务器,是一台在Internet上具有独立IP地址的计算机,可以向Internet上的客户机提供WWW、Email和FTP等各种Internet服务。WWW 采用的是浏览器/服务器结构,其作用是整理和储存各种WWW资源,并响应客户端软件的请求,把客户所需的资源传送到 Windows 95(或Windows98)、Windows NT、UNIX 或 Linux 等平台上。Apache仍然是世界上用的最多的Web服
21、务器,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、Windows、Linux系统平台上)以及它的可移植性等方面。Tomcat是一个开放源代码、运行servlet和JSP Web应用软件的基于Java的Web应用软件容器。Tomcat Server是根据servlet和JSP规范进行执行的,因此我们就可以说Tomcat Server也实行了Apache-Jakarta规范且比绝大多数商业应用软件服务器要好。 2.4 JDBC简介JDBC(Java Data Base Connectivity, Java数据库连接)是一种用于执行SQL
22、语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程
23、序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。3 系统模块分析3.1 需要完成目标本系统的开发采用MVC模式,选用所熟悉的开发工具及开发环境进行本系统的设计与开发。设计开发一个危货罐车定期检验报告在线审核系统的审核员模块,本设计要求实现审核员的登陆、待审核报告的查看、已审核报告的查看、特定检测报告的查询及个人信息管理等功能。本毕业设计要求提供能实现危货罐车定期检验报告在线审核系统中审核员模块的功能,要求模块具有操作简便、界面友好等特性;形成一个真正实用的、功能完善的Web网站。3.2 功能需求根据以上的目标分析,需要设计出网站的前台和后台。管理员主要进行后台操作
24、,审核员与检验员主要进行前台的操作,即浏览审核内容,并做出相应的交互,即能做出更新或修改。根据以上想法,设计审核员模块的基本功能如下:审核员登录;待审核报告列表查询;已审核报告列表查询;个人信息维护;修改登录密码;安全退出。将以上这些功能制作成网页以后,在其中互相建立连接,基本完成审核系统对审核员的职能要求。3.3 环境需求操作系统:Windows XPWeb服务器:Apache Tomcat开发环境:Java Development Kit 1.7数据库:SQL Server 20084 系统整体设计审核员模块整体设计如图4.1所示:审核员查看待审核报告查看已审核报告查询检测报告个人信息维护
25、修改密码安全退出选择待审核报告批量审核通过批量审核未通过输入报告编号修改基本信息保存信息保存新密码图4.1 审核员业务流程4.1 数据流程分析在分析了系统的业务流程之后,就要分析系统的数据流,为后面设计网站的数据库做好基础。这里主要利用数据流程图来说明数据流程。根据审核员业务流程,可以将数据流的总体图归纳如下:管理员审核信息审核系统审核员审核通过与否检验员图4.2 总体业务数据流分析图进一步分析网站的数据流程,得到网站数据流程的零级图,如图4.3所示。管理员添加待审核报告待审核报告报告信息待审核报告存储审核员审核已审核报告查看检测报告个人信息维护退出图4.3 网站数据流的零级图4.2 数据字典
26、数据字典是关于数据的信息的集合,也就是对数据中包含的所有元素的定义的集合,它为软件开发人员提供数据库设计的参考,并为用户了解系统时作为一个必要工具。1) 数据流表4.1 用户注册信息数据流名称:用户注册信息来源:用户注册去向:用户信息表组成:用户编号、用户帐号、用户密码、用户姓名、用户类别、用户电话、用户资格证书编号、用户注册日期、用户最近一次登录日期、用户数字签名图像、用户状态表4.2 审核报告信息数据流名称:审核报告信息来源:审核报告去向:报告审核表组成:报告编号、申请审核公司、罐车牌照、挂车牌照、运营证编号、充装介质、核定载质量、注册登记时间、制造单位名称、罐体截面形状、罐车型号、材质、
27、罐体规格、公称壁厚封头、公称壁厚筒体、实测壁厚封头、实测壁厚筒体、公称容积、底盘与罐体连接是否合格、运行条件、存在问题、检验员编号、检验日期、审核员编号、审核日期、批准员编号、批准日期、报告所处状态、报告是否标记、报告是否删除2) 数据加工表4.3 审核报告数据加工名称:审核报告来源:审核报告信息去向:报告审核表加工逻辑:将报告审核完成后,审核通过与否表4.4 查询报告数据加工名称:查询报告来源:审核报告信息去向:报告审核表加工逻辑:输入报告编号,进行查询表4.5 修改个人信息数据加工名称:修改个人信息来源:用户信息修改去向:用户信息表加工逻辑:修改基本信息,然后提交5 功能模块设计5.1 审
28、核员功能设计审核员主要负责报告的集中审核,所以基本操作一般集中于审核报告表的读取与修改,并且涉及到审核员个人的信息管理,因此,可以将审核员功能模块分为两大块,一个是审核报告模块,一个是个人信息管理模块。如下图所示。审核系统管理员模块审核员模块检验员模块待审核报告已审核报告查询检测报告个人信息维护修改密码安全退出图5.1 审核系统审核员模块功能结构图审核模块的功能是对审核报告进行审核和管理。登陆模块:登陆界面为合法用户提供一个登陆入口。该模块的功能是对三中身份的工作人员进行验证。用户输入登陆账户和密码后,选择登陆人员类别,系统将判断登陆ID及密码的有效性,如果通过验证则进入后台主页,反之则提示错
29、误。待审核报告模块:该模块主要显示当前待审核的报告列表,通过查询数据库中报告的审核状态进行筛选,并且可以通过多选和清除选项进行批量审核工作。已审核报告模块:该模块主要用来显示当前已经报批审核通过的列表,通过查询数据库中报告的审核状态进行筛选,并且可以通过查看详情进入该报告的详情页。查询检测报告模块:通过输入报告单号,来查询该单号的报告情况。个人信息维护模块:通过读取数据库中用户信息表的数据来显示当前登录用户的信息,并且通过修改按钮来改变信息。修改密码模块:可以通过该模块进行密码修改。安全退出模块:可以退出当前登录账号,回到登录界面。5.2 数据库设计数据库是数据库应用程序的重要组成部分。一个设
30、计结构合理的数据库对于应用程序的开发效率和程序的性能都是非常重要的。根据整个审核系统的功能来划分,审核员模块将要用到两个基本的数据库表,一个就是用户信息表,另一个是审核报告表。用户信息表用来存储注册用户的分类,编号及密码等。审核报告表则是按照顺序结构逐一将报批的危货罐车的各方面参数记录下来,方便网站调用。5.2.1 E-R图E-R图也称实体-联系图,提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。用户信息表INFO_USER的实体图用户信息用户编号用户账号用户密码用户姓名用户类别用户电话用户资格证书编号用户注册日期用户最近一次登录日期用户数字签名图像用户状态图5.2用户信息表
31、INFO_USER的实体图审核报告信息表INFO_USER的实体图报告信息报告编号申请公司罐车牌照挂车牌照运营证编号充装介质核定载质量注册时间单位名称图5.3 审核报告信息表INFO_REPORT实体图5.2.2 基本表设计表的设计时这次系统开发的一个核心内容。根据前面对系统功能模块的分析和对数据库中实体关系的设计,可以看到审核员模块中所用到的数据信息基本包括:用户信息、审核报告信息等。下面是为数据库设计的表:用户信息表INFO_USER用户信息表INFO_USER用来保存用户信息。表INFO_USER的结构如表5.1所示。表5.1 INFO_USER的结构字段名称数据类型长度是否允许空是否为
32、主键字段描述user_idint4否否用户编号user_dlmvarchar15否否用户帐号user_pwdvarchar15否否用户密码user_namevarchar10否否用户姓名user_typechar1否否用户类别user_telephonevarchar20是否用户电话user_zgzbhvarchar20是否用户资格证书编号user_regdatedatetime8否否用户注册日期user_lastdatedatetime8否否用户最后一次登录日期user_qmvarchar20是否用户数字签名user_statechar1否否用户状态审核报告信息表INFO_REPORT审核报
33、告信息表INFO_REPORT用来保存审核报告相关信息,表INFO_REPORT的结构如下表所示。表5.2 INFO_REPORT的结构字段名称数据类型长度是否允许空是否为主键字段描述repo_idchar10否否报告编号repo_companyvarchar50否否申请审核公司repo_cpzvarchar10否否罐车牌照repo_gcpzvarchar10是否挂车牌照repo_yyzbhvarchar10否否运营证编号repo_czjzvarchar50否否充装介质repo_hdzlint4否否核定载质量repo_zcrqdatetime8否否注册登记时间jbqk_zzdwvarchar5
34、0否否制造单位名称jbqk_jmxzvarchar50是否罐体截面形状jbqk_gcxhvarchar50否否罐车型号jbqk_czvarchar30否否材质jbqk_gtggcint4否否罐体规格cjbqk_gtggkint4否否罐体规格kjbqk_gtgggint4否否罐体规格gjbqk_gcbhftnumeric9否否公称壁厚封头jbqk_gcbhnumeric9否否公称壁厚筒体jbqk_scbhftnumeric9否否实测壁厚封头jbqk_scbhnumeric9否否实测壁厚筒体jbqk_gcrjnumeric9否否公称容积jbqk_ljhgvarchar10是否底盘与罐体连接是否合格
35、repo_yxtjvarchar100是否运行条件repo_czwtvarchar200是否存在问题jy_useridint4否否检验员编号jy_datedatetime8否否检验日期sh_useridint4否否审核员编号sh_datedatetime8是否审核日期pz_useridint4是否批准员编号pz_datedatetime8是否批准日期repo_statechar1否否报告所处状态repo_flagchar1否否报告是否标记repo_deletechar1否否报告是否删除6 系统实现6.1 审核员登录为了检验用户是否是审核系统的合法用户,需要用户输入用户名和密码来核对用户的合法性
36、,并根据用户选择的身份类别进行验证,用户登录模块就是要完成这一功能。该模块需要用到管理登陆功能,即login.jsp这个文件。在本系统中用户密码不经过加密而直接以明文形式存进数据库,验证时直接从数据库中取出密码跟用户输入的密码核对。前台需要设计一个表单让用户输入用户名和密码。用户登录流程图如图6.1所示。开始给管理登陆实例输入用户名、密码打开数据表INFO_USER用户名/密码不空是取值成功?是写入session,存放用户登陆和权限信息结束返回错误提示信息否登陆出错否图6.1 用户登陆流程图相关代码如下表:表6.1 login_action.jsp详细代码登录验证动作 登陆页运行结果如下图。图
37、6.2 用户登陆界面图6.3 登陆出错界面图6.4 登陆成功界面6.2 审核员进行审核报告查询进入审核员模块,将要进行的主要操作便是进行报告的查询与审核。根据需求分析,得出需要进行待审查报告查询、已审查报告查询以及特定编号报告查询三项操作。基本上都属于查询数据库的操作,因此实现起来比较直接。以下便是查找审核报告操作的流程图。开始已审查报告待审查报告特定编号查询连接数据库已审查标记待审查标记报告编号打开数据表INFO_REPORT取出特定报告数据库中有数据吗将报告按指定格式列出关闭数据库是否结束图6.5 查找审核报告操作流程图相关代码如下表所示。表6.2 dbin.jsp文件代码%try Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver).newInstance(); java.sql.DriverManager