91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Jasper如何配置動態數據源

發布時間:2022-01-15 16:29:45 來源:億速云 閱讀:125 作者:柒染 欄目:大數據

Jasper如何配置動態數據源,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

Jasper 本身是不支持動態數據源的,能用的解決方式是通過 api 自定義數據源,實際操作就是根據條件判斷后動態設定 jdbc 的 url、用戶名及密碼等連接屬性。比如:

String userName = userDetails.getUsername();
 // obtain a connection based on the username.
 String dataSourceURI = "";
 if (userName.equalsIgnoreCase("admin")) {
 dataSourceURI = "/datasources/ds_1";
 userName = "xx";
 …
 }else if{…}
 connection = getRepositoryDatasource(dataSourceURI);
 try {
 parameterValues.put(JRParameter.REPORT_CONNECTION,
 connection.getDataSource().getConnection());
 } catch (SQLException sqle){
 sqle.printStackTrace();
 }

API 盡管做到了動態數據源, 但過程還是比較復雜的,另外還會導致自定義類與應用間高耦合,后期維護也是挺麻煩的事兒。

如果有集算器,這個問題就很容易處理,比如某業務量較大的企業把每年的數據都分庫存放在獨立服務器。當按年度查詢數據(如訂單表)的時候,就要動態的去連對應庫。

集算器 SPL 一句話搞定


ABC
1=connect(dataSource)/get dataSource connect
2=A1.query(“select * from orders”)/Execution query

其中,“connect(dataSource)”為獲取數據庫連接,“dataSource”為集算器參數,傳入哪年就可以獲取對應數據庫連接。

上面的場景還只是最簡單的取數需求,如果涉及到多數據源的混合運算,對于 Jasper 來說就更困難了,甚至沒解決方案。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沽源县| 呼玛县| 山东省| 丰原市| 富裕县| 浑源县| 南澳县| 望奎县| 宣城市| 喀喇沁旗| 张家口市| 陆良县| 沧源| 科技| 年辖:市辖区| 泸西县| 弥勒县| 苍南县| 华亭县| 观塘区| 宜川县| 双牌县| 随州市| 双江| 镇雄县| 霍林郭勒市| 凤庆县| 承德县| 莆田市| 综艺| 义乌市| 常熟市| 鸡西市| 平罗县| 恩平市| 景德镇市| 泌阳县| 桃园县| 宁陵县| 鄂托克旗| 太保市|