999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

廣播電視發射網信息管理系統

2018-04-18 06:22:14段永良卜言彬
電視技術 2018年8期
關鍵詞:頁面廣播電視數據庫

段永良,卜言彬,高 露

(中國傳媒大學 南廣學院,江蘇 南京 211172)

將廣播電視發射網的信號數據上傳至服務器,進行有效存儲從而實現數據的妥善管理。根據所存儲的數據進行對比,判斷其是否符合標準、是否存在干擾等等。

廣播電視發射網用于發射廣播電視信號,信號數據應該有專屬的工具來存儲并處理,因此,開發一個Web應用類型的管理系統很有必要,通過這個應用實現信號數據的完整封裝并分發,從而使得廣播電視發射網信息管理走向智能、走向高效、走向簡單直觀。

傳統的廣播電視發射網信號數據都由人工進行管理,繁瑣復雜,開發Web應用來管理這些數據會使過程簡單,結果直觀。因為計算機的界面適用于和人交互,所以設計的界面會顯得尤其人性化,直觀的同時能夠很快地進行數據的分析處理。選擇開發JavaWeb應用實現這個數據管理系統很容易讓人接受和理解,JavaWeb可采用的請求響應式的數據查詢操作方式更顯完美。另外,運用計算機的存儲管理使得管理過程更高效、更安全[1]。

1 系統需求分析

1.1 目標分析

廣播電視發射網信號數據管理系統,基于B/S模式,以請求響應式的方式,記錄廣播電視發射網信息、廣播電視發射臺信息、發射機信息、信號信息,對這些信息可進行相應的增加、刪除、修改、查詢操作,通過系統的管理,最終實現以下目標:對廣播電視發射網信息進行增刪改查;對廣播電視發射臺信息進行操作管理;對每個廣播電視發射臺下所對應的發射機的信息進行操作管理;對每臺發射機的發射的信號信息進行操作管理;對用戶進行管理。

1.2 用戶分析

廣播電視發射網工作人員:通過注冊獲得一個賬號,以此賬號可以登錄到系統中,進行數據的普通查詢操作等等。

系統管理員:登錄后進入后臺管理界面,對廣播電視發射網工作人員進行有效管理,對系統的數據信息進行管理,實施刪除、修改、增加、查詢等。

2 系統實現

主要介紹開發環境及主要技術、數據庫、廣播電視發射網模塊、廣播電視發射臺模塊、發射機模塊、信號模塊、用戶模塊、管理中心模塊[2]。

2.1 開發環境及主要技術

編輯器->Eclipse(Luna),數據庫->Oracle&&sqlDeveloper,語言->Jave,前端->Html5、JavaScript、jQuery,驗證->Ajax,后端->三大框架SSH(Hibernate,Struts,Spring),三層架構模式,面向接口編程,spring依賴注入等。

三大框架:Spring+Struts+Hibernate,Spring引入各個組件的對象并且進行注入;Struts的作用相當于servlet用于處理請求并實現頁面跳轉,而Hibernate就是對數據庫的底層操作數據的增刪改查。

三層架構:從下往上依次是Dao數據層,Service業務邏輯層,MVC顯示層,通過這個模式實現整個項目的架構搭建。這里的MVC是指model:JavasBean類,view:jsp/html,controller:控制器,這里就是struts,控制頁面的跳轉。

面向接口編程和依賴注入:這兩個技術都是Spring框架帶來的好處之一,Spring是個輕量級的框架,管理著對象的產生以及對象與對象之間的關系,對象的產生是注入的,并不關心對象是如何產生的,只要獲取對象即可;面向接口編程,使得重點都放在功能上,不用關心具體的實現類是哪一個[3]。

2.2 數據庫

數據庫有6個表,每個表有表名、字段名、屬性。

廣播電視發射網信息表有6個字段,廣播電視發射臺信息表有4個字段,發射機信息表有4個字段,信號信息表有6個字段,用戶信息表有8個字段,管理員信息表有6個字段。數據庫用Oracle,Sys是數據庫的超級用戶,數據庫內很多重要的東西(數據字典表、內置包、靜態數據字典視圖等)都屬于這個用戶,sys用戶必須以sysdba身份登錄。

2.3 廣播電視發射網模塊

(1)數據模型建立

在model包中新建一個關于station廣播電視發射網(以下簡稱發射網)的類,其中包括發射網編號、名稱、地址經、緯度,這些都是station類的屬性,然后使用相應的get和set方法使用屬性,屬性定義為private私有類型,使得屬性只屬于類的各個對象,然后每產生一個對象就會在數據庫中形成相應的一條數據記錄。因為使用ORM技術來建表,所以對應的類通過注解@Entity實體,形成表格數據形式,并注解@Table(name=”t_name”)形成表;另外,表格中每形成一條記錄都是使用id自增長的格式,所以Id要注解為主鍵@Id,并且注解上:@GeneratedValue(stratgy=GeneratedType.AUTO)實現主鍵自增長。

(2)框架配置

手動創建dao層hibernate對象,配置一個hibernate.cfg.xml(這個配置文件起到初始化的作用),使得初始化類在插入對象時操作底層數據庫,在后面的具體操作中就不會使用這個配置了,因為引入了Spring,所以這個配置會在Spring的配置文件中實現。

(3)開發過程

分為幾個小部分:發射網、廣播電視發射臺(以下簡稱發射臺)、廣播電視發射機(以下簡稱發射機)、廣播電視發射信號(以下簡稱信號),分別對這幾個部分進行對應的技術實現。通過接收到發射網的信號數據,確定發射網的編號、名稱、地理坐標,因此建表的時候需要對發射網這些屬性進行描述,將這些屬性封裝到發射網對象中從而實現在數據庫的存儲、修改、刪除、添加。

項目中新建com.model的包,這個包專門用來存放基本類模型。新建一個發射網類Station.java,關于發射網的屬性:station_id序號、addressCode編號、addressName名稱、latitude經度、logitude緯度,這些屬性只屬于發射網本身,設置為private類型,只能通過方法進行使用,因此要給這些屬性添加getXX和setXX方法。然后,需要有空構造函數和帶參數的構造函數,因為每當要在數據庫中形成一條新紀錄都必須要構造一個新對象。

(4)手動建表并初始化

新建一個初始化包,建立一個InitStation類,因為現在是通過手動操作hibernate,所以需要每一個過程都描述清楚,每次需要對數據庫進行操作的時候都要建立會話工廠,開啟事務,打開事務,然后進行增刪改操作,最后執行完后進行事務關閉。

(5)引入Spring框架

經過初始化后,數據庫可以成功連接,現在使用spring來引入Hibernate的操作對象,并由spring管理struts對象,控制邏輯的跳轉。使用Spring來管理生成對象并控制對象與對象之間的關系,對象的產生和屬性設置通過Spring的IOC(控制反轉)和DI(依賴注入)實現。

(6)添加發射網

采用從前往后的開發模式,即從頁面->action->service->dao層。

新建add_station.jsp頁面,提交到stationAction中,并且指定為add方法,用的是post方法,表單中使用一系列的input控件標簽,給每個控件一個name。

新建action包,建立一個StationAction.java類。該類繼承自ActionSupport類,這個action要處理前端提交過來的數據信息,用strut可以實現自動獲取客戶端提交的請求對象數據。其實現過程是,根據約定大于配置的規則,前端頁面中配置的input標簽的name,在action中設置name的屬性,根據需要給定set方法,用set方法將name的值設置到action中的屬性中去,get方法則用于后端將數據返回到頁面前端。

在StationAction中的類名上注解@Controller,@Scope,這是因為spring在托管struts的對象,注解這個后會在啟動時掃描這個形成對應的action對象。

添加屬性,屬性名和前端的input標簽的name一致,并給出相應的get和set方法。

添加add方法,這個方法名要對應到前面提交的方法名參數,在這個方法中有四個參數,addressCode, addressName, latitude, logitude,這些參數同樣遵循約定大于配置,和model包中的station類的屬性名一致,最起碼類型是一致的,因為,系統的宗旨就是通過操作對象來實現數據的增刪改查,所以添加實現的就是將前端提交的屬性通過set到對象中,將這個對象封裝起來,從而將對象存放到數據庫中去形成一條記錄。

上述添加方法中用到了service層的service對象,因為service層是邏輯業務層,所有的轉換、業務邏輯運算等等都是放在這一層的,就是通過在stationAction中引入對Service對象的調用,從而實現業務運算,所以現在進入到service層,新建service包,建立一個StationService.java類,在這個類中進行一些業務邏輯的轉換。然而,因為需要在service中建立action中對應的多個方法,需要實現的功能就會很多,所以StationService實際上是個interface,即接口。

新建service接口的實現類,放在ServiceImpl包中,類名StationServiceImpl,并且要實現StationService接口。

上述用到的stationDao對象,是通過StationDao接口得到的,建立dao層的包,其中新建StationDao接口,因為這也是個接口,所以只需要在接口中添加上service實現時用到的方法即可。

建一個dao的實現類的包DaoImpl,新建一個StaionDao的實現類,StationDaoImpl類實現StationDao接口。再建立一個成功添加的頁面,添加一個successs即可。

(7)查詢Station并形成列表

同樣使用從前向后的開發模式,新建station_list.jsp頁面。以表格顯示出來,表格中用一個iterator的遍歷,將action中封裝的list取出來,這里用到了分頁技術。這里有個注意點,因為現在取的是action中的對象值,而后臺的數據都是放在棧中的,取值的時候可以不用“#”,而如果是取頁面上下文的數據時必須要用“#”。

(8)刪除station數據

同樣使用從前向后的方式,因為在前面使用后面組件中的對象或方法對象時會報錯,從而根據報錯的這個機制在后面組件中對應的地方添加方法的實現即可,這種顯示提示的方式給開發帶來了很大的便利。

(9)修改Station對象信息

和刪除的方法類似,不需要建頁面,在station_list.jsp中每條數據后面添加修改的超鏈接,超鏈接的請求是stationAction中的update方法。

2.4 發射臺模塊

一個發射網擁有多個發射臺,其對應關系是一對多的。發射臺和station之間存在著聯系,每一個發射臺對應在特定的station下面,以station的id為參照線,按照這個參照線進行發射臺的增、刪、改、查。另外,需要補充的是每個發射臺有自己的名稱,每個名稱對應到一個編號,于是根據這個編號可以比較方便地進行查找發射臺的具體信息,因此,發射臺有名稱和編號兩個屬性以及一個id。

(1)創建發射臺模型

1)model包中建立Machine類模型;2)Mechine發射臺的初始化。

(2)添加發射臺

和添加發射網一樣采用從前到后的開發模式,點擊添加發射臺,跳出添加頁面,add_machine.jsp(新建的頁面,通過表單形式,一系列的input,注意這時候會將父節點就是Station的id傳過來,因此這個id必須被隱形的傳到action中,用input,只是設置成hidden類型了),輸入發射臺編碼和名稱即可提交,成功后到數據庫查詢。

(3)查看發射臺列表

1)添加查看超鏈接,連接到新頁面machine_list.jsp,并且將station_id傳過來,即根據station來查找其下對應的發射臺;2)新頁面machine_list.jsp,即發射臺列表,頁面同樣是采用從action中獲取的page對象的list屬性得到machine的每一個屬性并顯示出來;3)machineAction中添加getMachineList方法,同樣給出頁數和條數,并將結果對象返回到前端中;4)MachineService接口中添加getAllStation方法,傳遞頁數和條數;5)MachineDao中添加getAllStationCount和getMachineList方法;6)配置struts請求成功后的跳轉路徑,只需再配置一個result,給出跳轉的頁面machine_list.jsp。

(4)刪除發射臺

根據列表給出的每一條machine對應的id,從而到后端數據庫中找到相應的對象,然后進行對象的刪除;MachinAction中添加delete方法,調用machineService方法形成對象后刪除;MachineService實現類中先將參數轉型,然后用dao層getMachineById找到對象進行刪除;MachineDao接口中添加deleteMahchine和getMachineById方法;配置struts.xml,同樣是operate_ok.jsp頁面,在數據庫中查詢記錄被刪除即可。

(5)修改發射臺信息

修改信息的過程基本上同station發射網信息修改過程,其基本想法就是將原來的屬性數據傳遞到后端,根據給出的父節點machine_id將父對象找出來,然后形成一個新的空的machine,將新的屬性set到machine中,并set一個新的station父對象給machine,然后在數據庫中把這個對象save到數據庫中。

2.5 發射機模塊

一個發射臺內擁有多臺發射機設備,這些發射機設備有各種屬性,被各個發射臺所關聯,一個發射臺可以控制多臺發射機。

(1)建立sender模型類;(2)初始化sender;(3)添加設備:頁面中添加超鏈接,action中添加請求添加的方法add,并且action中要注解上@Controller;(4)刪除設備:同上述刪除發射臺一樣,前端傳來節點的id,根據這個id找出對應的對象,然后刪除這個對象即可;(5)修改設備信息:將原來信息的值全都傳到后端,然后根據這個id找出對象,給對象重新設置屬性值,再將對象update到數據庫即可[4]。

2.6 信號模塊

這里的信號是指分布在廣播電視覆蓋區內各測試點的接收信號,信號強度即為覆蓋場強。對于信號模塊,開發過程與sender和machine原理一致,不同的是信號的參數會比較多,有場強、頻率、接收時間、類型(廣播、電視)。

(1)添加信號

1)建立信號模型:注解成Entity和Table,準確地形成對應的數據庫表格。配置hibernate.cfg.xml,掃到這個類形成表格。初始化時,在id為61的Sender下建立一系列信號,將id為61的sender取出來set到signal對象中,最后save,到數據庫中驗證,找到記錄。2)添加信號功能:建立一個頁面,在其中輸入各種信號屬性數據,然后提交,以表單的形式請求到SignalAction的add方法,add方法中會調用SignalServeice的add相應的方式,并在SignalServiceImpl實現類中得以實現,再對Dao層方法調用,實現save。

(2)獲取信號列表

獲取信號列表,同樣用的是page對象封裝一切的屬性,包括信號的list,在頁面中取出對應的屬性值即可,action中添加請求的方法,然后在service中處理具體的請求過程,最后由dao層來進行數據的分頁查詢與顯示:

(3)刪除信號

由前端提交過來的id,找出相應id的signal對象,然后將這個對象從數據庫中刪除。

2.7 用戶模塊

這個模塊是為發射網的用戶而設計的,主要設計了注冊和登錄功能。創建用戶的模型,用戶的action,service和dao,同樣要進行初始化,驗證連接是否正確。

(1)注冊

register_jsp注冊頁面,以表單方式進行提交,提交至請求userAction的register方法,其實,register就是在做用戶添加功能,在這部分關鍵是只要將屬性封裝到user對象中即可,然后dao層save對象[5]。

(2)登錄

用表單將用戶名和密碼提交至后臺,根據這兩個信息到數據庫中查找是否有這個對象的存在,若有計數大于0,則登錄成功,如果沒有則說明用戶不存在,因此要做的工作是重新注冊然后進行登錄。

(3)查詢信息

通過首頁的導航欄選擇進入查詢程序,可以查看發射網、發射臺、發射機、信號等具體的信息,還能夠通過條件進行查詢。

(4)退出

退出時,只需要將對應鏈接到的請求方法中session失效即可。

2.8 管理中心模塊

每個模塊的管理是建立在上述模塊每個功能實現的基礎上,在后臺通過將這些模塊的增、刪、改、查進行組合。

(1)各模塊管理

各模塊信息添加、刪除、修改、查詢,通過上述模塊的各種操作來實現。

(2)用戶管理

對用戶進行添加、刪除、查詢、列表。

3 結束語

傳統的設計思路是先建立數據存儲的表格,建立數據對象的類模型,通過前端提交過的客戶端請求,調用業務處理邏輯,從而實現對數據的增、刪、改、查;而該系統中使用三大框架SSH構建了整個流程,省略了先建表的過程,顯得非常清晰,易于讓人接受。其實,不管是用上述兩種方式的哪一種方式進行開發,其實質都是一個就是根據屬性來封裝對象,只不過前者是對數據操作,后者是對對象操作,這是兩者最根本的區別[6]。使用三大框架、三層架構、面向接口編程和依賴注入技術構建廣播電視發射網信息管理系統,簡單、方便、實用。系統運行正常,數據精確,方便快捷,穩定可靠,省時省力,具有很高的推廣價值。

猜你喜歡
頁面廣播電視數據庫
大狗熊在睡覺
刷新生活的頁面
保健醫苑(2022年1期)2022-08-30 08:39:14
數據庫
財經(2017年2期)2017-03-10 14:35:35
周六廣播電視
周日廣播電視
周五廣播電視
周三廣播電視
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
主站蜘蛛池模板: 男女猛烈无遮挡午夜视频| 久久精品这里只有精99品| 国产91在线免费视频| 波多野结衣一区二区三区88| 国产视频一区二区在线观看| 精品午夜国产福利观看| 99热这里只有精品5| 色天天综合| 亚洲IV视频免费在线光看| 国产黄网站在线观看| 人妻丰满熟妇av五码区| 噜噜噜久久| 日韩在线2020专区| 久久频这里精品99香蕉久网址| 国产成人精品亚洲77美色| 最新亚洲人成网站在线观看| 久久久久亚洲Av片无码观看| 中文字幕日韩丝袜一区| 日韩高清无码免费| 欧美午夜视频在线| 国产极品粉嫩小泬免费看| 国产另类视频| 国产精品制服| 色香蕉网站| 沈阳少妇高潮在线| 尤物午夜福利视频| 激情亚洲天堂| 性做久久久久久久免费看| 欧美国产精品不卡在线观看| 免费人成视网站在线不卡| 国产精品入口麻豆| 26uuu国产精品视频| 久久综合国产乱子免费| 国产美女丝袜高潮| 日本不卡在线播放| 99ri精品视频在线观看播放| 手机看片1024久久精品你懂的| 国产成人精品男人的天堂下载 | 18禁影院亚洲专区| 欧洲av毛片| 久久青草精品一区二区三区| 4虎影视国产在线观看精品| 国产亚洲精品91| 国产日韩欧美精品区性色| 中文字幕在线一区二区在线| 欧美天堂在线| 经典三级久久| 欧美成人综合在线| 中文字幕色在线| 亚洲精品中文字幕无乱码| 日韩成人在线一区二区| 一级片免费网站| 成人免费黄色小视频| 国产亚洲精品97在线观看| 成人免费黄色小视频| 日本午夜影院| 精品国产一二三区| 露脸真实国语乱在线观看| 日韩在线观看网站| 国产丝袜啪啪| 亚洲欧美日韩精品专区| 72种姿势欧美久久久久大黄蕉| 国产精品爽爽va在线无码观看| 国产幂在线无码精品| 国产黄色爱视频| 被公侵犯人妻少妇一区二区三区 | 波多野结衣在线一区二区| 亚洲精品va| 久久人搡人人玩人妻精品| 国产真实自在自线免费精品| 国产一级精品毛片基地| 成人在线亚洲| 欧洲一区二区三区无码| 国产午夜小视频| 国内精品九九久久久精品 | 日韩东京热无码人妻| 欧美成a人片在线观看| 一区二区理伦视频| 欧类av怡春院| 国产女人18毛片水真多1| 青青草原偷拍视频| 婷婷五月在线视频|