新闻中心

天天游戏基于JSP技术的广海局互联网站动态信息发布系统

2023-01-04
浏览次数:
返回列表

  天天游戏中地数媒(北京)科技文化有限责任公司奉行创新高效、以人为本的企业文化,坚持内容融合技术,创新驱动发展的经营方针,以高端培训、天天游戏技术研发和知识服务为发展方向,旨在完成出版转型、媒体融合的重要使命

  第一作者简介:黄旭,女,1974年生,广州海洋地质调查局信息资料所网络室,工程师。

  摘要 本文阐述了由我局开发的基于B/S 模式的网站动态信息发布系统,描述了系统的基本模块和功能。此系统利用JavaBean组件技术集成程序代码,采用JDBC进行Web数据库访问,并给出了系统实现的一些关键性的代码。

  广州海洋地质调查局的国际互联网站于2003年建立,作为对外树立单位形象、展示我局最新科研成果、先进技术设备和手段的一个重要窗口。目前我局的互联网网站图文信息发布采用传统的手工制作网页的静态信息发布模式。这种模式工作效率低,动态信息的时效性无法体现,给网络信息内容审核及管理带来诸多不便。这不利于发挥网站的作用。动态图文信息发布系统的研制目的是提高网站动态图文信息发布的自动化程度和工作效率,免去了烦琐的网页制作过程,使不懂得网页制作的人员也能进行网站动态信息内容更新,方便信息审核及管理。

  作为一种成熟的动态网页开发技术,JSP是由SunMicrosystems公司倡导,许多公司参与一起建立的一种动态网页技术标准。JSP技术具有以下特点:①适应平台的广泛性,②较好的安全性,③组件开发的方便性[1]。考虑以上因素,在开发网站动态信息发布系统过程中我们采用了JSP技术。

  本系统是基于B/S(BroWser/Web Server)模式进行开发的,具体来讲,采用如图1所示的三层次体系结构[2],包括:①表示层;②逻辑层;③数据层。

  其中,表示层是互联网动态信息发布系统的用户接口部分,是实现用户与应用逻辑处理结果的交互界面,也是用户与Internet之间交互信息的窗口,由浏览器构成。逻辑层完成与信息发布系统有关的所有的事务逻辑,Web服务器是该层中的重要组成部分,它根据客户端的请求启动相应的进程来完成有关的事务处理,并将处理结果以HTML代码的形式,发送给客户端浏览器。信息发布系统主要由客户端浏览器、单位网站、信息发布系统和数据库四大部分组成(图2)。本系统采用Tomcat 5.0.28 作为JSP引擎嵌入到Web服务器,在该层中,为提高执行效率和安全性[3],通过JavaBean实现与数据库的连接。数据层是由数据库服务器所构成,它主要提供数据管理,对数据库数据进行读写,能够执行大量的数据的更新和检索,完成数据存储。本系统采用的数据库服务器是SQLServer2000。

  考虑到实际要求,设计了如图3所示的基本功能模块。下面就其中的主要模块进行功能分析。

  在系统登录模块中,主要是用于检验登录系统用户身份的合法性,并根据用户的身份动态定向到不同的页面,使得不同身份的用户具有不同的操作权限。

  主要用于用户进行新闻信息的发布、编辑、查看和审核等操作。包括如下的基本操作:

  2)二级菜单 显示用户在后台已经发布的新闻信息,并提供让用户根据权限查看、编辑及删除已发布的信息的功能。

  J2 SDK是Java2的软件开发工具,是Java应用程序的基础。JSP是基于Java技术的,所以配置JSP环境之前必须要安装J2 SDK。本系统采用Tomcat作为JSP引擎。在软件安装完成后都要进行环境变量的配置。

  数据库连接对动态网站来说是最为重要的部分,Java中连接数据库的技术是 JDBC(Java Database Connectivity),是一种用于执行SQL的Java API,由一组用Java语言编写的类和接口组成,它为数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯Java API语言编写完整的数据库应用程序[4]。在开发中,我们采用JavaBean来对数据库连接和执行SQL语句等通用数据库操作进行封装,避免直接对数据库进行操作带来的工程浩大,代码过长,不易维护。同时为了节省时间和资源,避免因采用传统连接模式而导致数据库重启,我们采用了数据库连接池技术。主要代码如下:

  JavaBean是一种Java类,通过封装属性和方法成为具有某种功能或者处理某个业务的对象。JavaBean被组织成为Package(数据包)以便进行管理,实际上就是把一组JavaBean一起放在某某目录中,每个类的定义前加上Package某某。把经编译成类的文件放在JSP服务器的特定目录下[6]。

  1)定义JavaBean 组件,将一组 JavaBean一起放在某个目录下,每个类的定义前加上Package,生成.java文件;

  设置要引用的JavaBean,生成JavaBean的一个实例,用<jsp:useBean>标记来完成。实例化一个JavaBean,就可以访问它的属性。通过使用<jsp:getproperty>标记来获得属性值,使用<jsp:setproperty>标记来改变JavaBean属性值[7]。

  如:要完成用户注册功能,先定义一个名为 op user.java的JavaBean组件,它用add()方法将表单中用户填写的信息添加到数据库表user中,如果添加成功则返回true,否则返回false.在实现用户注册功能的页面register.jsp调用这个JavaBean,代码如下:

  新闻表字段包括新闻标题、所属栏目、副标题、是否审核、新闻作者、新闻发表人、添加时间、修改时间、所属部门、新闻内容、是否包含图片、审核人。

  信息发布系统的用户主要有三类:系统管理员、审核员和普通维护员。添加用户的流程是首先输入一个用户名,然后调用数据库确定该用户名没有被使用,其次填写用户信息表,设置用户的初始密码和权限,最后将用户信息写入数据库。用户登录的流程是用户提交登录表单后,需要调用数据库来判断该用户的账号与密码是否正确。如果正确则将用户名记录到Session对象中,如果不正确则返回登录界面重新登录。如果登录用户是系统管理员,将进入管理员用户界面;如果是普通用户将登录普通用户界面。用户登录后可以更改初始密码,修改后的信息将重新写入数据库。新闻统计表单是将已发表的新闻按照质量记录的要求以表格的形式显示出来,用户可直接通过打印机打印出来。

  一级菜单表单是对在网站首页显示的主菜单进行管理。用户可以增加需要在首页显示的主菜单。二级菜单表单将用户在系统内发表的新闻全部显示出来。包括新闻标题、发表时间、天天游戏所属上级菜单、新闻发表人、是否审核。用户可点击新闻标题预览新闻,可以修改或删除自己发表的新闻。当用户点击修改或删除选项时,系统将根据保存在Session对象中的用户名来调用数据库中该用户信息,判断该用户是否拥有权限。如果拥有权限则允许用户修改或删除该条新闻,否则系统将提示用户没有权限。在发表新闻表单中,用户只需在相应的文本框中输入信息,系统将自动生成网页并将信息保存到数据库中。其中文章内容栏是一个简易的网页编辑器,用户可对输入的新闻信息进行编辑。用户可通过上传图片选项将网页中的图片上传到数据库中。在新闻输入完成后,用户可以网页形式预览发表的新闻。在审核新闻表单中拥有审核权限的用户可对已发表的新闻进行审核,编辑新闻内容并重新保存到数据库。如果新闻已经通过审核,将显示在网站的首页。

  当用户登录到该系统,通过系统验证后,天天游戏系统会自动将用户基本信息及用户权限信息保存在服务器端,此时,如果用户有相应的权限就可以进行用户及权限管理、栏目管理,以及信息发布、信息审核等操作。

  对于普通用户,登录进入系统后可以选择进行上述操作。当用户选择某个模块并对其进行操作时,系统将查询服务器端保存的该用户权限,验证合格后,系统把相应的信息或功能页面显示给用户,用户可以根据自己的权限对所浏览内容进行添加、编辑和删除操作。如果用户需要发布信息,可点击发表新闻模块,在相应的标题栏中输入信息,将要发布的内容输入到文章内容栏中,系统将调用相应的模版形成网页。用户点击确定就可以预览刚刚制作的网页。若权限验证不合格,表示用户没有相应权限,天天游戏系统将弹出警告信息告知用户不能进行该操作,天天游戏确认警告信息后并不影响该用户继续进行其他有权限的操作。

  当用户以管理员身份进入系统后,系统默认管理员具有对于该系统维护、管理的最大权限,即管理员可以进行用户管理、用户角色管理、用户权限管理以及发布信息、文章管理、审核信息等操作。每个用户都可以拥有多个角色,也就是说每个用户可以拥有多种权限。

  JSP承袭了Java面向对象的程序语言能力和跨平台的优势,并能够与HTML紧密结合,与传统的CGI程序相比,JSP不仅编写、执行容易,也大幅度提高了系统的执行性能,提高了信息审核、发布和管理的工作效率。

  [1]任艳.应用JSP 进行数据库信息发布.计算机工程与应用,2002,38(7):212~214,249

  [3]屈霞.基于JSP的数据库应用程序安全访问控制设计.电脑开发与应用,2005,18(6):15~16,19

  [4]孙敏.JSP连接数据库方法探讨.电脑知识与技术,2005,3:21~22

  [5]李兴锋,王移芝.基于JSP的Web动态数据库交互技术的探讨.计算机应用与软件,2005,22(4):26~27,127

  [7]孟宪虎,沈均毅.WEB数据库应用程序安全性设计的一种实现.计算机工程与应用,2002,9:119

搜索