修改帶JAVA自定義類的報(bào)表還要重啟應(yīng)用該怎么解決-創(chuàng)新互聯(lián)

修改帶JAVA 自定義類的報(bào)表還要重啟應(yīng)用該怎么解決,針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

專注于為中小企業(yè)提供成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)京山免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了成百上千家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

這是 JAVA 編譯型語(yǔ)言特性決定的,修改 JAVA 程序重啟應(yīng)用也正常。只不過(guò)改報(bào)表就要重啟整個(gè)應(yīng)用就有點(diǎn)夸張了,報(bào)表變動(dòng)比較頻繁,每次都重啟應(yīng)用會(huì)影響業(yè)務(wù)的。

這個(gè)問(wèn)題的根本原因是耦合性問(wèn)題,報(bào)表里一旦涉及到 JAVA 代碼就要跟主應(yīng)用程序一起打包部署了,也就是耦合在一起,想要修改報(bào)表實(shí)時(shí)生效(熱切換)也就不可能了,所以解決這個(gè)問(wèn)題的思路是解耦報(bào)表和主應(yīng)用程序。

一般來(lái)說(shuō)報(bào)表中使用 JAVA 編碼主要基于以下幾種原因:

1、數(shù)據(jù)計(jì)算涉及復(fù)雜過(guò)程和邏輯控制
為報(bào)表準(zhǔn)備數(shù)據(jù)時(shí)涉及的計(jì)算過(guò)于復(fù)雜,或者需要做比較復(fù)雜的邏輯控制,通過(guò) SQL 不易實(shí)現(xiàn),只能通過(guò) JAVA 硬編碼

2、涉及多樣性數(shù)據(jù)源
報(bào)表的數(shù)據(jù)來(lái)源多種多樣,當(dāng)涉及 NoSQL、文本、XML、Hadoop、時(shí)序數(shù)據(jù)庫(kù)、Webservice 等數(shù)據(jù)源時(shí),報(bào)表工具無(wú)法實(shí)現(xiàn)混合計(jì)算,需要用 JAVA 實(shí)現(xiàn)報(bào)表數(shù)據(jù)準(zhǔn)備

3、方便應(yīng)用擴(kuò)展
未來(lái)業(yè)務(wù)增長(zhǎng)需要對(duì)應(yīng)用進(jìn)行水平擴(kuò)展(拆分),使用 SQL 不利于未來(lái)分庫(kù),只能用 JAVA 實(shí)現(xiàn)報(bào)表數(shù)據(jù)計(jì)算

4、用于管理
為了管理需要,有時(shí)需要記錄報(bào)表訪問(wèn)人、報(bào)表查詢次數(shù)、每次查詢了哪些數(shù)據(jù)等信息,通過(guò) JAVA 編寫(xiě)監(jiān)聽(tīng)類實(shí)現(xiàn)

這樣看來(lái),要解耦報(bào)表模塊也不是很容易,最好直接使用具備這些能力的報(bào)表工具:
1. 很強(qiáng)的復(fù)雜計(jì)算能力,能完成較復(fù)雜的運(yùn)算,還容易實(shí)現(xiàn)邏輯控制;
2. 多樣性數(shù)據(jù)源支持,最好還能混合計(jì)算,如 CSV 和 DB 做 join;
3. 計(jì)算不依賴數(shù)據(jù)庫(kù),方便擴(kuò)展
4. 支持熱切換,修改報(bào)表不用重啟應(yīng)用

可以看一下 如何降低報(bào)表應(yīng)用的耦合度 ,介紹了如何使用報(bào)表工具解耦報(bào)表和主應(yīng)用,畫(huà)個(gè)圖感受一下:

修改帶JAVA 自定義類的報(bào)表還要重啟應(yīng)用該怎么解決
原來(lái) JAVA 程序把報(bào)表和主應(yīng)用緊緊綁在一起,現(xiàn)在可以把報(bào)表模塊單獨(dú)拆分維護(hù),解釋執(zhí)行可以熱切換,修改報(bào)表可以不必重啟整個(gè)應(yīng)用了。甚至還可以將報(bào)表模板單獨(dú)部署,在物理上實(shí)現(xiàn)分離。

工具對(duì)復(fù)雜計(jì)算的支持可以參考 如何應(yīng)對(duì)報(bào)表開(kāi)發(fā)中的復(fù)雜邏輯
對(duì)多樣性數(shù)據(jù)源的支持參考 在報(bào)表中直接使用多樣性數(shù)據(jù)源

關(guān)于修改帶JAVA 自定義類的報(bào)表還要重啟應(yīng)用該怎么解決問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

分享文章:修改帶JAVA自定義類的報(bào)表還要重啟應(yīng)用該怎么解決-創(chuàng)新互聯(lián)
網(wǎng)址分享:http://muchs.cn/article6/spjog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開(kāi)發(fā)、商城網(wǎng)站、云服務(wù)器、建站公司、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

小程序開(kāi)發(fā)