freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于jasper的報表管理平臺設(shè)計與實(shí)現(xiàn)碩士學(xué)位論文-資料下載頁

2025-06-19 15:56本頁面
  

【正文】 erDAO平臺用戶管理功能的數(shù)據(jù)操作hengtReportUserRoleDAO處理用戶與角色權(quán)限設(shè)置之間的數(shù)據(jù)操作 系統(tǒng)通過使用Spring的DAO來操縱數(shù)據(jù)庫,但需要與iBATIS框架進(jìn)行整合,具體實(shí)現(xiàn)我們可以通過一些代碼和配置文件來說明。以用戶管理為例,首先iBATIS通過 ,它實(shí)現(xiàn)的是針對用戶相關(guān)信息的數(shù)據(jù)庫SQL語句的操作,、數(shù)據(jù)源以及iBATIS的SqlMapClient的配置工作,。 事務(wù)管理配置信息 數(shù)據(jù)源配置信息 SqlMapClient配置信息此時,Spring的SqlMapClientDaoSupport和它封裝的SqlMapClientTemplate都已經(jīng)被Spring注射過,已經(jīng)能夠調(diào)用iBATIS下的操作數(shù)據(jù)庫的方法,用戶管理的HengtReportUserDAO繼承于SqlMapClientDaoSupport,所以HengtReportUser 。 視圖層系統(tǒng)在界面設(shè)計上采用的是Velocity模板引擎,基于它獨(dú)立性強(qiáng),與后臺組件耦合低,簡單易懂,可維護(hù)性高等優(yōu)點(diǎn),我們可以很好地展示系統(tǒng)的報表數(shù)據(jù),滿足用戶的需求。視圖的處理流程一般是這樣的:首先,用戶在報表管理平臺的頁面上提出一個請求,控制器接收到這個請求后,根據(jù)用戶請求的具體內(nèi)容調(diào)用對應(yīng)的業(yè)務(wù)邏輯方法進(jìn)行處理,接著將處理后的數(shù)據(jù)放入Context對象中,然后控制對應(yīng)的Velocity模板調(diào)用Context對象中的數(shù)據(jù),融合后將結(jié)果輸出給用戶。Velocity建立的Context對象主要作用是用于vm模板和控制器之間數(shù)據(jù)的傳輸。 功能模塊和Velocity模板的關(guān)系平臺各功能模塊名稱Velocity模板名稱用戶管理模塊角色管理模塊報表模板管理模塊數(shù)據(jù)源管理模塊分頁模塊操作成功頁面顯示操作失敗頁面顯示具體的界面實(shí)現(xiàn)是根據(jù)前一章的流程設(shè)計而得到的,首先我們要確定需要顯示的數(shù)據(jù),比如用戶列表數(shù)據(jù),, 用戶管理的vm視圖代碼程序開發(fā)人員則實(shí)現(xiàn)具體數(shù)據(jù)的加載,()方法初始化Velocity,接著創(chuàng)建一個context對象用于保存和傳遞用戶相關(guān)的數(shù)據(jù),,返回一個template。再經(jīng)過模板和數(shù)據(jù)的融合。 界面實(shí)現(xiàn)代碼 控制器層報表管理平臺的控制器層從用戶界面接收用戶的操作請求,并發(fā)送給相關(guān)的功能模型進(jìn)行邏輯處理,當(dāng)處理完成后,將再將處理結(jié)果返回給特定的用戶視圖組件。我們在這一層主要定義了類名,它們互相之間通過各種配合來最終完成各種功能。 報表管理平臺的主要控制器類類名功能AdminController處理管理員角色權(quán)限相關(guān)操作邏輯hengtReportBeanController執(zhí)行數(shù)據(jù)源為JavaBean的獲取數(shù)據(jù)操作hengtReportDatasourceController處理數(shù)據(jù)源管理頁面的添加、編輯等界面操作hengtReportJdbcController執(zhí)行數(shù)據(jù)源為JDBC的獲取數(shù)據(jù)操作hengtReportJndiController執(zhí)行數(shù)據(jù)源為JNDI的獲取數(shù)據(jù)操作hengtReportParameterController處理報表模板管理時的參數(shù)設(shè)置邏輯hengtReportRoleController處理角色管理功能模塊的相關(guān)操作邏輯hengtReportTemplateController處理報表模板管理功能模塊的相關(guān)邏輯hengtReportUserController處理用戶管理功能模塊的相關(guān)操作邏輯IndexController處理平臺的主頁顯示、操作等邏輯hengtReportJasperEngineController執(zhí)行報表生成時解析XML文件,將JasperDesign對象轉(zhuǎn)換為JasperReport對象,為JasperReport對象填充數(shù)據(jù)源和報表打印輸出等步驟根據(jù)SpringMVC的工作機(jī)制,它以分發(fā)器(Dispatcherservlet)為中心處理各種業(yè)務(wù)邏輯。,當(dāng)Dispatcherservlet被定義配置完成后,每當(dāng)執(zhí)行各種請求,分發(fā)器就會對請求進(jìn)行分發(fā),根據(jù)請求內(nèi)容的不同,分發(fā)器可以將請求分發(fā)給控制層或者分發(fā)給表示層。 分發(fā)器Dispatcherservlet配置信息 具體實(shí)例我們以數(shù)據(jù)源管理為例,對它進(jìn)行數(shù)據(jù)源的添加操作,以明確每一層起到的具體作用。用戶在數(shù)據(jù)源管理頁面上點(diǎn)擊“Add”按鈕,請求被分發(fā)器Dispatcherservlet發(fā)送到數(shù)據(jù)源管理控制器hengtReportDatasourceController類,控制器接收到“action=Add”的業(yè)務(wù)請求,并找到相關(guān)邏輯進(jìn)行處理,: 跳轉(zhuǎn)至添加頁面代碼ModelAndView類的toAdd方法會調(diào)用hengtReportDataSourceTypeService. queryList方法,執(zhí)行查詢數(shù)據(jù)源類型的操作,并將查詢到的結(jié)果放入ModelMap中,返回一個新的ModelAndView,該ModelAndView持有的View名稱為datasource/hengt_report_datasource_add。View名稱會被bean屬性id為viewResolver的解析器解析,: viewResolver配置信息然后程序調(diào)用datasource/,: 數(shù)據(jù)源添加界面用戶輸入相應(yīng)的數(shù)據(jù)源信息后,點(diǎn)擊按鈕“Test Connection”,分發(fā)器再次獲取請求并分發(fā)到控制器hengtReportJdbcController,執(zhí)行測試連接數(shù)據(jù)庫相關(guān)操作,并返回連接成功或者連接失敗窗口,當(dāng)保存數(shù)據(jù)源連接信息時,hengtReportJdbcController也會執(zhí)行保存操作, OrUpdate方法來保存數(shù)據(jù),返回界面保存成功信息。 保存數(shù)據(jù)源信息代碼。通過調(diào)用hengt ,調(diào)用hengtReportDatasource Dao. update接口來存儲數(shù)據(jù)源信息。DAO接口是對本文MYSQL數(shù)據(jù)庫的具體操作接口,使用它可以讓程序只對接口進(jìn)行操作而不用直接面對業(yè)務(wù)邏輯的數(shù)據(jù)庫處理,最后將添加完成的數(shù)據(jù)源顯示在數(shù)據(jù)源管理界面上以供用戶查看和管理。 addOrUpdate方法代碼 Jasper報表引擎分析 Jasper報表產(chǎn)生流程JasperReports報表引擎能夠滿足本系統(tǒng)功能齊全、報表復(fù)雜度高、支持格式多、維護(hù)成本低的特點(diǎn),具備更加突出的優(yōu)勢。對它的源代碼分析可以讓我們更加清楚地了解報表產(chǎn)生的過程實(shí)現(xiàn)、具體的步驟實(shí)現(xiàn)等等好處。 JasperReports流程圖分析JasperReports產(chǎn)生報表的流程是設(shè)計報表管理平臺處理報表模板生成報表文件的關(guān)鍵所在。從XML文件到最后報表的形成,基本上是通過這個流程圖的步驟,以JRXML格式存在的文件通過解析生成JasperDesign對象,然后經(jīng)過編譯生成JasperReport對象,再通過數(shù)據(jù)源的填充,產(chǎn)生JasperPrint對象,最后打印或者輸出不同形式的文件。這是JasperReports工具引擎整體的系統(tǒng)工作流程圖,十分清晰地反映了報表引擎的工作過程,而其具體的步驟內(nèi)容將在下面幾節(jié)講述。 Jasper報表引擎的主要步驟這里主要講的是JasperReports引擎生成報表時的主要步驟,通過對代碼的理解來熟悉報表的生成過程。其步驟一般分為解析與編譯、數(shù)據(jù)源填充、報表打印或者報表輸出。 解析與編譯首先,生成報表的第一步為文件的解析與編譯。此步驟輸入的是jrxml文件,經(jīng)過loadXML方法的解析,輸出JasperDesign對象,再調(diào)用JRCompiler接口,將jasperDesign對象轉(zhuǎn)換成jasperReport對象,生成jasper文件。 數(shù)據(jù)源填充生成報表的第二步是數(shù)據(jù)源填充。已經(jīng)編譯完成的jasper文件需要數(shù)據(jù)的填充才能形成真正的報表, ToFile方法,輸入jasper文件,輸出jrprint文件。 報表輸出生成報表的第三步是打印報表或者輸出報表文件。這兩種輸出方式如下。(1)打印報表經(jīng)過數(shù)據(jù)源填充的報表最終會生成jrprint格式的文件,輸入jrprint文件,最后輸出打印后的報表。(2)輸出報表文件,輸入jrprint文件,輸出PDF格式的報表。除了PDF,JasperReports還能輸出其他各種不同形式的報表,比如XML、HTML、DOCX等等。 報表編譯相關(guān)的類和接口分析: JasperReports編譯時的類和接口功能類和接口名稱主要功能JRxmlLoader類1.加載jrxml文件返回JasperDesign對象。2.封裝里面的元素。JRpiler接口定義了方法接受參數(shù)返回jasperReport對象。JasperCompileManager類它是一個編譯管理器,作用是將jrxml文件轉(zhuǎn)換成jasper文件,將jasperDesign對象轉(zhuǎn)換成jasperReport對象。 報表引擎的數(shù)據(jù)源分析JasperReports支持兩種方式的數(shù)據(jù)源定義:(1)在報表中定義一個sql語句,并且傳給填充的方法一個Connection,此方式只適合于靜態(tài)報表,sql語句中的field要與報表中定義的field一一對應(yīng)起來。(2)通過JRDataSource接口的實(shí)現(xiàn)來定義數(shù)據(jù)源,該接口有兩個方法組成。 JRDataSource接口的實(shí)現(xiàn)方法實(shí)現(xiàn)方法名主要功能public boolean next()主要判斷數(shù)據(jù)源是否還有數(shù)據(jù)存在public Object getFieldValue(JRField field)取得對應(yīng)報表定義Field的值,定義的數(shù)據(jù)源既可以是靜態(tài)的可以是動態(tài)的 報表引擎的輸出格式當(dāng)數(shù)據(jù)源填充JasperReport對象后,報表就以JasperPrint對象的形式存在。需要輸出不同形式的報表,有兩個類需要用到:JasperPrintManager和JasperExportManager。 報表輸出類類名主要功能JasperPrintManager主要用于報表的打印JasperExportManager主要用于輸出不同格式的報表文件,例如PDF、HTML等 基于Jasper的報表管理系統(tǒng)集成本文報表管理系統(tǒng)的具體實(shí)現(xiàn)代碼借鑒JasperReports報表工具?;谏弦还?jié)對JasperReports報表工具的源碼進(jìn)行了一定的分析,我們獲取了對本文報表管理系統(tǒng)更多的代碼支持。根據(jù)具體架構(gòu)的實(shí)現(xiàn),我們結(jié)合MVC框架的設(shè)計思想來完成系統(tǒng)的集成。報表管理模塊可以使用JasperReports的具體實(shí)現(xiàn)方法來進(jìn)行系統(tǒng)的集成。 基于Jasper的報表管理平臺集成圖首先,用戶對iReport報表設(shè)計工具提供的jrxml報表模板文件進(jìn)行管理和運(yùn)行,接著報表管理平臺結(jié)合Jasper引擎,對報表模板進(jìn)行解析和編譯,并把相關(guān)設(shè)定值、jrxml文件和編譯完成產(chǎn)生的jasper文件的路徑存放到數(shù)據(jù)庫中,以便系統(tǒng)隨時獲取和調(diào)用,然后對生成的jasper文件進(jìn)行數(shù)據(jù)源的填充和具體參數(shù)的設(shè)置,最后報表管理平臺輸出PDF格式的報表文件。在本文的開發(fā)過程中,我們將JasperReports報表工具的部分有關(guān)對jrxml格式的報表模板文件處理的源代碼整合導(dǎo)入到報表系統(tǒng)之中,并且對這部分代碼進(jìn)行了一些比較符合本文報表系統(tǒng)的整理和修改[30]?;谝陨闲问郊傻膱蟊砉芾砥脚_具有這樣一些特點(diǎn):(1)報表模板支持jrxml文件,它是iReport報表設(shè)計工具提供的非常強(qiáng)大的報表模板,不僅能夠表現(xiàn)視圖、表格等內(nèi)容,還能夠支持子報表等較復(fù)雜的報表形式。(2)平臺結(jié)合了JasperReprots的引擎,這使它更具有突出的報表處理能力。(3)數(shù)據(jù)源的選擇上能夠支持多種類型,更加豐富了數(shù)據(jù)的完善性和平臺的可擴(kuò)展性。(4)支持多種輸出格式,因?yàn)楸鞠到y(tǒng)是在Jasper引擎的基礎(chǔ)上搭建的,在輸出方面也毫不遜色,能夠支持多種格式,例如PDF、HTML、XLS等。(5)開發(fā)維護(hù)費(fèi)用低,平臺使用的是免費(fèi)的開源軟件,能夠?qū)⑹褂煤途S護(hù)的費(fèi)用降到最低層次,保證企業(yè)在行業(yè)市場的競爭優(yōu)勢。(6)具有MVC設(shè)計模式的一些優(yōu)勢,例如能夠提高Jasper報表引擎模塊的重用性,也具備良好的靈活性和松耦合特性。 平臺的功能模塊實(shí)現(xiàn) 總體功能模塊按照軟件工程方法[31],根據(jù)需求分析得到報表管理平臺的具體功能要求,并進(jìn)行系統(tǒng)模塊的劃分,平臺功能規(guī)劃為五個部分:用戶管理、角色管理、數(shù)據(jù)源管理、報表管理和賬戶管理。 系統(tǒng)功能模塊結(jié)構(gòu)圖在數(shù)據(jù)源管理中,數(shù)據(jù)源會以多種方式被引用,例如JDBC、Bean等,每種方式都有著自己的特點(diǎn)。在報表管理時,用戶可以管理報表模板、運(yùn)行報表并最終生成報表文件。賬戶管理的主要內(nèi)容是用戶的基本信息查看和用戶密碼的修改,基本信息包括個人賬號名稱、聯(lián)系方式以及角色權(quán)限信息等。 用戶管理模塊實(shí)現(xiàn)用戶是報表管理平臺的主要組成部分,平臺通過用戶注冊的信息對其進(jìn)行身份的檢驗(yàn)和查證,獲取用戶相關(guān)信息等,通過該模塊可以對用戶進(jìn)行管理,包括對本應(yīng)用平臺內(nèi)部的用戶信息的增刪改查,以及對用戶在該系統(tǒng)內(nèi)的使用權(quán)限進(jìn)行啟用或者停用等維護(hù)。用戶信息一般包括用戶名稱、賬號密碼、個人聯(lián)系方式以及其他一些涉及安全或隱私的個人信息。本模塊展示的是報表管理平臺的全部用戶列表信息。,它的基本流程是打開用戶管理界面,系統(tǒng)后端連接用戶的數(shù)據(jù)庫、獲取相關(guān)數(shù)據(jù),并且顯示在界面上。當(dāng)進(jìn)行管理操作用戶信息時,比如增加用戶、編輯用戶或者刪除用戶時,分別執(zhí)行相應(yīng)的操作流程,系統(tǒng)后臺也會實(shí)時更新用戶數(shù)據(jù),完成用戶管理的流程與步驟。 用戶管理流程圖,以用戶的角度來看,在用戶管理模塊下有用戶列表選項(xiàng),單擊這個選項(xiàng),便可以生成用
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1