真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Jasper如何配置動態(tài)數(shù)據(jù)源

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

成都創(chuàng)新互聯(lián)公司是專業(yè)的鄯善網(wǎng)站建設公司,鄯善接單;提供成都網(wǎng)站制作、做網(wǎng)站,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行鄯善網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

Jasper 本身是不支持動態(tài)數(shù)據(jù)源的,能用的解決方式是通過 api 自定義數(shù)據(jù)源,實際操作就是根據(jù)條件判斷后動態(tài)設定 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 盡管做到了動態(tài)數(shù)據(jù)源, 但過程還是比較復雜的,另外還會導致自定義類與應用間高耦合,后期維護也是挺麻煩的事兒。

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

集算器 SPL 一句話搞定


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

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

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

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。


分享標題:Jasper如何配置動態(tài)數(shù)據(jù)源
文章源于:http://weahome.cn/article/pcdjcd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部