APP下载

磁带节目管理系统的设计与实现

2014-04-29钱永江陈观林

计算机时代 2014年8期

钱永江 陈观林

摘 要: 磁带和节目信息是广播电视机构媒体资产的重要内容。介绍了一个面向广电行业的磁带节目管理系统的具体设计和实现,该系统基于J2EE平台开发,采用IBM DB2数据库,整合了Struts和Hibernate框架,能够实现对磁带和节目信息的综合管理和高效查询,为广电行业信息化建设提供了良好的平台。

关键词: 磁带管理; 节目管理; 广电行业; J2EE

中图分类号:TP31 文献标志码:A 文章编号:1006-8228(2014)08-27-04

Design and implementation of tape and program management system

Qian Yongjiang1, Chen Guanlin2

(1. Department of Technology Management, Radio and TV Group of Zhejiang province, Hangzhou, Zhejiang 310005, China;

2. School of Computer and Computing Science, Zhejiang University City College)

Abstract: Tape and program information are important components of media assets in radio and TV organizations. The design and implementation of a tape and program management system are proposed for radio & TV industry, which is developed based on J2EE platform and IBM DB2 database, integrating the Struts and Hibernate framework. As a good support for informatization construction of radio & TV industry, the system can provide comprehensive management and efficient query for tapes and programs.

Key words: tape management; program management; radio and TV industry; J2EE

0 引言

随着新一代信息技术的快速发展,广播电视行业的信息化应用也越来越广泛[1]。磁带和节目信息作为广电行业重要的媒体资产形式,其数字化、网络化建设一直以来受到广电各级管理部门的高度重视[2]。

目前,已有不少广播电视机构研发了磁带管理信息系统和节目管理信息系统[3],这些系统对于促进磁带和节目的规范化管理、提高工作效率起到了举足轻重的作用[4]。

本文采用主流的J2EE技术[5],结合基于MVC模式的Struts和Hibernate框架[6],设计并实现了一个面向广电行业的磁带节目管理系统,可以用于广播电视台对磁带和节目信息的综合管理,使得宝贵的媒体资产信息能够快速、有效地得以利用,从而为广电行业的信息化发展提供一个良好的信息管理平台。

1 系统总体设计与分析

1.1 系统总体需求分析

磁带节目管理系统根据广电行业磁带物资流动、管理以及节目管理流程进行设计,为广电行业节目制作部门提供网上信息收集、分析和联机事务处理功能,使管理决策人员能及时、准确得到相关的磁带节目管理信息,提高磁带节目管理的效率与质量,从而实现广播电视机构对磁带库和节目信息的科学管理。

系统的主要功能模块包括磁带管理、空白带查询、信息查询、信息统计和系统维护。

系统的基本框架如图1所示。

⑴ 磁带管理:实现二手带调配、磁带报废和磁带入库登记等功能。

⑵ 空白带查询:实现库存查询、部门领用查询、栏目领用查询和个人领用查询等功能。

⑶ 信息查询:实现磁带信息查询、节目信息查询、获奖信息查询、节目借阅查询、个人借阅查询、磁带跟踪查询和高级查询等功能。

⑷ 信息统计:实现空白带统计、节目资料统计、个人工作量统计、借带超期统计、磁带借阅统计和成品带入库率统计等功能。

⑸ 系统维护:主要实现栏目维护功能。

1.2 系统业务流程

磁带节目管理系统的业务流程包括:

⑴ 磁带购买后入磁带库,制作人员从磁带库申请并领用空白带;

⑵ 制作人員对录制完成的节目进行登记录入、维护;

⑶ 播完后,磁带库人员对成品带进行登记入库;

⑷ 制作人员可以对磁带进行借用;

⑸ 各部门可对空白带领用情况及节目带的入库、库存、借还情况等各种统计信息进行查询。

系统业务流程图如图2所示。

1.3 数据库设计

磁带节目管理系统共设计了磁带规格型号表、入库磁带明细表、空白带领用主从表、二手带调配主从表、磁带库库房表、节目类别表、节目属性标签表、节目信息总表、节目信息详表、磁带借阅记录表和磁带预借表等20多张数据表,其中主要的数据库表清单见表1。

2 系统详细设计与实现

系统运用J2EE技术开发,以IBM DB2作为后台数据库,综合利用Struts+Hibernate框架,实现了基于MVC模式的B/S系统应用。

系统的登录界面如图3所示。

下面详细说明系统主要功能模塊的具体实现方法。

2.1 磁带管理模块的设计实现

磁带管理模块包括磁带入库登记、二手带调配和磁带报废功能。对新入库的磁带进行登记,统一进行入库管理;二手带可以通过磁带库统一调配,便于磁带在频道或部门内部人员间的流通;磁带统一进行报废,报废的磁带信息需要登记备案。

以磁带的入库登记为例,首先调用ActEStorage类的init方法,初始化浏览器的session,返回指向到actfrmEStorage.list页面。

部分代码如下:

public ActionForward init(ActionMapping mapping, ActionForm

form, HttpServletRequest request, HttpServletResponse

response) throws BugReportBaseException {

request.getSession().removeAttribute("objlist");

return mapping.findForward("actfrmEStorage.list");

}

通过ActEStorage类的addcase方法,根据登录的用户名信息记录输入的条形码,将条形码信息存入到session中。这时要判断输入的条形码是否原先存在于数据库内,如果判断为False,则磁带条形码入库成功。该功能的实现使用了Servlet的Forward传递请求,Servlet首先建立一个请求指派对象,然后Forward方法将一个请求从Servlet传递到其他Web资源,指派对象的URL路径就改变为目标资源的URL,从而实现传递请求的功能。

磁带入库登记功能模块的截图如图4所示。

2.2 空白带查询模块的设计实现

空白带查询主要包括库存查询、部门领用查询、栏目领用查询和个人领用查询。可以对当前磁带库中的不同型号的空白带进行库存数量查询,还可以对部门、栏目、个人领用情况进行详细信息的查询。

空白带领用查询是系统的一项重要功能。在实际工作中,不同的部门、栏目、人员进行拍摄或节目制作等工作之前都要去磁带库领用空白带,系统共设置了部门领用、栏目领用和个人领用等三种查询方式。

下面以部门领用查询为例进行说明。

当用户选择所要查询的领用部门后,可以通过日期控件输入领用的起止时间,点击查询按钮,将调用ActEKbdoutSearch类的search_pingDao方法,该方法使用post方法向数据库查询部门领用空白带信息,得到的部门领用信息可以通过Excel导出并打印存档。

search_pingDao方法的关键实现代码如下:

ActfrmEKbdout condition=null;

if (request.getMethod().toUpperCase().equals("GET")) {

condition=(ActfrmEKbdout)request.getSession().getAttribute

("ActfrmEKbdout.condition");

request.setAttribute("actfrmEKbdout", condition);

} else

……

String currentPage=request.getParameter("page");

String pageUrl=request.getContextPath()+"/actEKbdoutSearch

.do?method=search_pingDao";

……

return

mapping.findForward("pingDaoSearch.list");

}

部门领用查询功能模块的截图如图5所示。

2.3 信息查询模块的设计实现

信息查询模块是磁带节目管理系统中最核心的查询模块,包括磁带信息查询、节目信息查询、获奖信息查询、节目借阅查询、个人借阅查询、磁带跟踪查询和高级查询等。通过此模块可以查询具体节目的详细信息,可按照节目类型、频道、栏目、期数、播出时间及节目关键字进行查询,也可以按借阅时间、借阅是否超期等条件查询具体某个员工的磁带借阅信息,还提供自定义查询和针对不确定信息的高级查询等功能。

节目信息查询可以针对节目的类型、频道、栏目、期数、播出时间、节目名称/节目内容和节目参与人进行查询。用户可以根据自己设置的条件进行设定范围的查询,提供的查询信息越详细,查询的结果就越接近用户的期望。

查询结果可能会返回大量符合条件的数据,在这个模块中使用到了分页技术,将所有数据分页展示给用户。

由于系统的多个功能模块都用到了分页技术,我们将分页技术的代码封装在一个DataPage类中,每次需要用到分页时调用该DataPage类。DataPage类用于封装一个分页对象集,其中数据通过List类型保存,同时保存总页数、当前页码、总记录数和当前页记录数等。

DataPage类的部分代码如下:

public class DataPage implements java.io.Serializable {

/**

*

用于按序保存页面所有对象

*/

private List pageData;

/**

*

用于保存默认分页索引字符串

*/

private String pageStr;

private int pageCount=-1; //总页数

private int totalRecordCount=-1; //总记录数

private int pageRecordCount=-1; //当前页记录数量

private int pageIndex=-1; //当前页码

public List getPageData() {

return this.pageData;

}

节目信息查询功能模块的截图如图6所示。

2.4 信息统计模块的设计实现

信息统计模块实现了对磁带信息的全面统计,主要包括空白带统计、节目资料统计、个人工作量统计、借带超期统计、磁带借阅统计和成品带入库率的统计等。

以磁带借阅统计功能为例,该功能提供了按库房统计、按频道统计和按频道总表统计等三种统计方式。

磁带借阅统计功能模块的截图如图7所示。

在统计功能模块实现的过程中,为了能够更好地在页面上提供简单的页面代码操作和页面更新,系统使用了JavaScript技术。在图7中可以看到,当鼠标移到表单某一行时,该行的背景颜色会自动变成蓝色。这就是使用JavaScript技术的效果,使用该技术提升了用户界面的友好性和可操作性。

实现该功能的代码略。

2.5 系統维护模块的设计实现

系统维护模块主要实现栏目维护功能,可以对具体的栏目进行维护,包括栏目起止日期、栏目制作信息、联系方式以及版权项等信息。

栏目维护以树形结构展示所有频道以及频道下的部门,主要通过ActEProgram.java中的tree方法实现。

实现的部分代码略。

栏目维护功能模块的界面如图8所示。

3 结束语

磁带节目管理系统是广电行业信息化建设的重要组成部分,为广播电视节目的改版和更新提供可靠的依据,为管理者决策提供有效的支持,从而使广电机构在新一轮的激烈竞争中寻求更大的发展成为可能。本文实现的面向广电行业的磁带节目管理系统基于主流的J2EE平台开发,采用IBM DB2数据库和MVC设计模式,综合运用了Struts+Hibernate框架技术等,实现了对磁带和节目信息的有效管理。今后将继续研究磁带和节目管理所面临的形势,扩展媒体资产的信息来源,引入智能的数据挖掘方法,提升广电行业的信息化、智能化水平。

参考文献:

[1] 陈观林,罗列异.面向广电行业的资源管理平台设计与应用[J].广播

与电视技术,2008.10:101-104

[2] 彭华.基于Web三层结构的用户和节目管理系统的分析设计[J].数字

技术与应用,2010.5:39-39

[3] 叶晋卿.北京电视台新闻媒资系统磁带库的选择[J].现代电视技术,

2006.7:66-69

[4] 于大勇.辽宁广播电视台媒体资产管理系统的设计与实现[J]. 广播电

视信息,2013,(6):101-104

[5] 张兴科.基于J2EE的框架技术研究与应用[J].计算机与数字工程,

2011.6:68-71

[6] 吴鹏.MVC模式与Struts架构的研究[J].软件导刊,2010.9(8):17-18