




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
在線公交查詢平臺的設計與實現摘要為了提高人們的生活質量,讓人們的出行更加方便,我決定開發在線公交查詢平臺。城市公交在人們的日常生活出行中有著不可代替的作用,它是與民生和社會發展有關的重要的基礎社會設施。它可以幫助出行的人們及時獲取公交車信息,幫助人們順利的出行。這次所開發的課題是城市在線公交查詢平臺,為了實現這個課題,我使用的技術是Spring+SpringMVC+Mybaties構架,用IDEA開發工具使用Java編程語言來實現了平臺的主要功能和前端的界面設計,數據庫采用了MySQL數據庫管理數據.首先要先分析用戶的需求和客觀條件的限,然后設計平臺的各個功能,最后敲寫代碼實現功能。關鍵詞:SpringMVC;Mybaties;公交車查詢;目錄目錄TOC\o"1-3"\h\u10285摘要 I10857插圖清單 IV25663表格清單 V108281引言 176601.1研究背景及意義 1205791.2國內外發展現狀及趨勢 1135431.2.1國內外發展現狀 1265801.2.2發展趨勢 1289422平臺需求分析 2258682.1可行性分析 2145932.1.1經濟可行性 2206142.1.2技術可行性 297892.1.3操作可行性 233152.2平臺需求分析 2110582.2.1業務流分析 3316142.2.2數據流分析 4253312.2.3數據字典 4223282.2.4數據庫需求分析 480432.3接口分析 5104921.登錄失敗 5128632.帳號不存在 5325783平臺概要設計 735283.1平臺總體設計結構 7127303.2數據庫表設計 817343.2.1ER圖 8303833.2.2數據表設計 812083.2.3表匯總 91243.3平臺出錯處理設計 976884平臺詳細設計 10193454.1平臺乘車模塊 1018015、Java部分 1418920結論與展望 2021816參考文獻 22插圖清單圖2-1在線公交查詢平臺業務流圖 3圖2-2在線公交查詢平臺數據流圖 4圖3-1在線公交查詢平臺總體結構設計功能圖 6圖3-2在線公交查詢平臺的E-R圖 7圖4-1登錄查詢流程圖 10圖4-2平臺登錄首頁圖 11圖4-3用戶操作流程圖 13表格清單表2-1用戶數據模型表 4表2-2登錄接口表 6表3-1用戶表 9表3-2出錯處理設計表 101引言1.1研究背景及意義隨著中國的發展,城市中的公交車數量也在不斷增加,我們要是來到一個不熟悉的地方乘坐公交車一開始是一個很不方便的事情,你不知道哪些公交車通向哪里,給人們帶來了極大的不便。因此,結合實際操作,開發出合適的在線公交查詢平臺可以使人們的出行變得更加方便,因為它可以讓人們不必親自去公交車站臺查看信息。在線公交查詢平臺的現狀分析:由于中國人口過多在上班下班高峰期交通擁堵,同時為了減少污染,提倡乘坐公交車。目前來看,在線公交查詢平臺至少具有以下功能:站點信息查詢,公交車車號查詢和站到站之間的路徑查詢,它不僅可以查詢每條線路的起停站,還可以進行分析是否進行換乘。1.2國內外發展現狀及趨勢1.2.1國內外發展現狀(1)國內發展現狀隨著中國的發展,目前公交車基本覆蓋了我國的所有縣級以上的城市,但部分不發達的城市是沒有在線公交查詢平臺的,主要有兩個原因,一是政府沒有多余的資金來開發,二是公交線路少。而在大一些的城市中雖然有在線公交查詢平臺,但總是有著一些缺陷。具體來說,國內在線公交查詢平臺市場需求較大,前景廣闊。未來在線公交查詢平臺市場一定會發展的更好。(2)國外發展現狀美國在20世紀60年代以后開始研究公共交通調查平臺,日本和歐洲在20世紀70年代后期開始研究。2000年,發達國家基本實現了國家運輸的智能化管理。與內部開發相比,外部開發更加合理。在這些國家公共交通產業發展的理由各種各樣。第一類是依賴汽車開發的城市。美國等發達國家雖然汽車擁有率和利用率高,但越來越受到能源不足的影響。在泰國等發展中國家,人均汽車擁有度與發達國家有很大不同,但汽車的擁有和使用沒有限制,遠遠超過了道路網和環境的可訪問性。第二類是汽車和鐵路運輸同步發達的城市,如英國倫敦、法國巴黎、東京、日本大阪等。人們更加喜歡乘坐公共交通,這能讓他們節約更多的時間。第三大城市為了支持新加坡和香港等城市的高密度開發,主要依賴公共交通工具封鎖了車輛的發展和使用。面對交通擁堵的嚴重問題,世界所有國家都在積極探索流量的有效模式。美國采取TOD模式和新的城市主義模式,在運輸中發揮主導作用,協調交通與土地利用的關系,促進城市開發與城市交通的合作。在英國倫敦,公共汽車道的整備、優先區域的整備、停車場的獎勵、中部的移動和擁擠等對策,形成了開發公共交通工具的有效方法。東京積極實施以鐵路運輸為重點的公共交通優先開發戰略,鐵路運輸成為大部分東京市民的首選,有效緩解了交通擁堵。1.2.2發展趨勢互聯網普及率超過六成,移動互聯網使用持續深化。截至2019年6月,我國網民規模達8.54億,較2018年底增長2598萬,互聯網普及率達61.2%,較2018年底提升1.6個百分點;我國手機網民規模達8.47億,較2018年底增長2984萬,網民使用手機上網的比例達99.1%,較2018年底提升0.5個百分點。與五年前相比,移動寬帶平均下載速率提升約6倍,手機上網流量資費水平降幅超90%。“提速降費”推動移動互聯網流量大幅增長,用戶月均使用移動流量達7.2GB,為全球平均水平的1.2倍;移動互聯網接入流量消費達553.9億GB,同比增長107.3%。隨著中國的高數量經濟發展逐漸轉變為高質量發展,人們也越來越注重生活的品質,為了減少對環境的污染,以及公共交通的方便,未來在線公交查詢平臺一定會發展的更加好,同時現在智能化的普及越來越高。未來在線公交查詢平臺一定會愈加趨向于智能化,這樣不但可以在線公交查詢平臺的操作更加簡單,還可以使在線公交查詢平臺的查詢更加高效。2平臺需求分析2.1可行性分析我們為什么要可行性分析。主要的目的是對軟件進行全方位,多角度的評估,以判斷軟件開發的所用的技術能否支持軟件功能的成功實現和軟件開發所需的金錢能否在軟件成功開發之后收回。通過分析結果,再來判斷是否開發軟件。2.1.1經濟可行性經濟可行性,是為了驗證項目是否能帶回足夠的收益,或者我們是否有足夠的金錢把項目開發完成。成本上看來,開發及平臺所需的就是一臺電腦,安裝一些應用軟件,只有敲寫代碼會占用大量時間。從收益來看:本項目并沒有任何物質上的收益,主要是用來驗證自己的能力。2.1.2技術可行性本平臺主要是開發網上在線公交查詢平臺,在數據庫中輸入公交車信息、站臺信息,用戶通過需求查詢信息。另一方面,本平臺使用的開發工具使用的為IDEA,開發框架采用的是Spring+SpringMVC+Mybaties,數據庫使用的是開源的MySQL,技術較為簡單。在大學期間系統學過網頁設計和網站搭建知識,具備一定的網頁設計和網站搭建能力。故本系統技術層面可行性也具有通過在學校學習的知識來完成這次考驗。2.1.3操作可行性面對第一次操作本平臺的用戶。我特意設計了一份用戶手冊可以幫助用戶了解它的功能。所以,在操作上是可行的。2.2平臺需求分析需求分析實現的目標:是將軟件用戶對于軟件的一系列意圖、想法轉變為軟件開發人員所需要的有關軟件的技術規格,但實際上這具有相當大的難度。需求分析的步驟:需求獲取、需求建模和細化、需求文檔和需求驗證。1、需求獲取(需求類別、需求獲取的方式)項目經過前期的確認以后,在需求分析階段獲取的需求,與項目前期獲取的需求有所不同。需求類別:用戶需求、功能需求、非功能需求2、需求建模并細化(1)結構化方法分析建模:結構化思想下,系統體現為“程序”+"數據",目標系統的系統分析邏輯模型由數據流圖和數據字典來描述。(2)面向對象方法分析建模:面向對象方法下,目標系統的系統分析邏輯由用例模型(用例圖+用例流程圖)+分析類模型構成。數據流圖:是描述系統中數據流的圖形工具,是一種用來表示信息流和信息變換過程的圖解方法。數據字典:是被用來對數據流圖中的加工和數據(數據流)進行補充說明,對數據流中出現的圖形元素做出確切的解釋。3、需求文檔化需要文檔是后續的軟件設計和測試的重要依據,需求文檔應該具有清晰性、無二義性和準確性,并且能夠全面和準確地描述用戶需求。4、需求驗證需求驗證是對需求分析的成果進行評估和驗證。二、結構化方法的需求分析結構化方法的需求分析由數據流圖及數據字典構成。1、數據流圖有四種基本符號:正方形或立方體、圓角矩形或圓形、開口矩形或兩條平行線、箭頭。正方形或立方體:表示數據的源點或終點圓角矩形或圓形:表示變換數據的處理開口矩形或兩條平行線:表示數據存儲箭頭:表示數據流2、數據字典一般應包括對數據的數據項、數據結構、數據流、數據存儲、處理邏輯、外部實體等進行定義和描述。三、面向對象的需求分析面向對象的需求分析,基于面向對象的思想,以用例模型為基礎。參與者:表示與系統進行交互的用戶或外部系統,使用系統的對象用例:指外部可見的系統功能,對系統提供的服務進行描述關聯:表示參與者與用例之間的通信,任何一方都可發送或接受消息泛化:是通常理解的繼承關系包含:指一個較復雜用例所表示的功能分解成較小的步驟擴展:把用例功能的延伸,相當于為基礎用例提供一個附加功能系統:表示一個物體或一項活動2.2.1業務流分析在線公交查詢平臺用戶通登錄使用。未登錄時不能執行等相關操作,當用戶注冊登錄之后,進入平臺就可以對公交車的信息和站臺的信息進行查詢、搜索等操作,還可以查看修改用戶的私人信息進,并且可以修改自己的登錄密碼。管理員可以通過后臺對用戶、公交車、站臺進行增刪改查操作,操作完成的數據都將實時保存到MySQL數據庫中。在線公交查詢平臺的業務流圖如圖2-1所示圖2-1在線公交查詢平臺業務流圖2.2.2數據流分析通過數據流分析可以幫助我們弄清楚平臺是如何操縱數據的。在線公交查詢平臺的數據流是通過用戶操作在線公交查詢平臺來進行流向的,該平臺數據的流向最主要的特征是它是雙向流動的,想要查看展示的數據必須依賴用戶的操作。在線公交查詢平臺流圖如圖3-2所示。圖2-2在線公交查詢平臺數據流圖2.2.3數據字典數據字典之中數據最主要的來源,與其他數據之間關系等的存儲。數據字典的建立一般是在開發平臺之前,它的主要作用是提高開發的效率,將數據共享,快速的幫助開發人員了解,找到所需要的信息,當開發人員和維護人員遇到了一個陌生的項目時,他們可以通過使用數據字典快速了解想要的信息,例如數據類型和相關的文本描述。這些解釋可以減少數據之間的不兼容性。如表2-1所示。表2-1公交車數據模型表數據項存儲名用戶信息數據項來源公交車信息表數據項去向查詢公交車信息模塊數據項組成用戶信息=公交車id+公交車編號+車牌號+公交車線路號+添加時間數據項描述保存了公交車的基本信息2.2.4數據庫需求分析在線公交查詢平臺使用的是開源的MySQL數據庫,MySQL可以用于主流的編程語言,對于各種編程語言都有良好的兼容性,在Java開發中十分常用。同時MySQL數據庫可以永久性保持數據,使用SQL語句可以更加快捷查詢、修改數據。而且MySQL是開源免費的,十分方便擴展。同時為了能讓開發人員更好的了解數據庫中表的字段意義,數據庫所有命名均遵循見名知意的原則,在本平臺中使用拼音為表和字段命名,例如,公交車信息表被命名為,gongjiaochexinxi。2.3接口分析優秀的接口設計能幫助我們有效的降低系統中各個部分之間的相互依賴,提高系統的性能。所以接口分析也是也開發軟件中必不可少的一環。接口的作用在各個項目中都能體現出來,不一定非要體現在開發大型軟件上,在小型的軟件開發上使用接口一樣可以可以提升軟件的性能,降低系統的耦合度。但不同的是,在大型的軟件開發中,接口設計遠比小型軟件開發重要的多,需要大量的人手來設計
同時接口有一個很好的的優點就是可以多重繼承,在面對一個類已經繼承了一個類后,如果再想為他增加新的規范,我們可以再為它繼承一個接口。接口在軟件開發中是十分重要的,我們要重視起來。接口說明:提供登錄系統時,輸入帳號、密碼等信息,完成用戶登錄并返回用戶相關身份信息,以及系統配置的部分服務開關信息。如表2-2登錄接口表所示表2-2登錄接口表輸入項必輸(Y/N)說明YonghuzganghuY賬戶MimaY密碼YanzhengmaY驗證碼異常輸出信息如下:1.登錄失敗<output><message><result>user</result><description>登錄失敗</description></message><data></data></output>2.帳號不存在<output><message><result>nouser</result><description>帳號不存在</description></message><data></data></output>2.4開發環境2.4.1硬件一臺安裝了Windows操作系統的電腦。2.4.2軟件1.IDEAIDEA代表IntelliJIDEA,這是一個與Java語言開發鏈接的環境。IntelliJ是業界最好的Java開發工具,尤其是在智能鍵入,自動代碼,響應,JavaEE支持,各種發布工具(git,svn等),JUnit,CVS集成,代碼分析和創新方面。可以認為是不尋常的。IDEA是JetBrains的產品。該公司總部位于捷克共和國首都布拉格,其開發商主要是東歐計劃的開發商。它的受歡迎程度還支持HTML,CSS,PHP,MySQL,Python等。2.MySQL數據庫在線公交查詢平臺使用的是開源的MySQL數據庫,MySQL可以用于主流的編程語言,對于各種編程語言都有良好的兼容性,在Java開發中十分常用。同時MySQL數據庫可以永久性保持數據,使用SQL語句可以更加快捷查詢、修改數據。而且MySQL是開源免費的,十分方便擴展。MySQL數據庫服務是一項完全托管的數據庫服務,使開發人員可以使用世界上最受歡迎的開源數據庫快速開發和部署安全的云本機應用程序。MySQL數據庫服務是唯一具有集成的高性能分析引擎HeatWave的MySQL云服務,該引擎使客戶能夠直接針對其可操作的MySQL數據庫運行復雜的分析,而無需進行復雜,耗時且昂貴的數據移動和與單獨的分析數據庫集成。MySQL數據庫服務已針對Oracle云基礎架構(OCI)進行了優化并獨家提供,由Oracle云基礎架構和MySQL工程團隊100%構建,管理和支持。
2.5開發技術2.5.1前端1.HTML語言HTML的全稱為超文本標記語言,是一種標記語言。它包括一系列標簽,通過這些標簽可以將網絡上的文檔格式統一,使分散的Internet資源連接為一個邏輯整體。HTML文本是由HTML命令組成的描述性文本,HTML命令可以說明文字,圖形、動畫、聲音、表格、鏈接等[2]。HTML是超文本標記語言英文名稱是HyperTextMarkupLanguage。超文本標記語言是指web頁面上顯示的不同部分的符號。HTML是TimBerners-Lee和他的同事DanielW.Connolly在1990年發明的標記語言。用HTML編寫的超文本文檔稱為HTML文檔,可以獨立于UNIX、Windows等各種操作系統平臺使用,在操作系統中通過瀏覽器可以查看HTML文檔。CSS層疊樣式表(CSS):定義HTML結構風格的語言,如字體、顏色、位置等,用于描述web頁面上的信息顯示。CSS格式可以直接存儲在HTML文檔中,也可以存儲在CSS格式下的單個文件中。CSS能夠對網頁中元素位置的排版進行像素級精確控制,支持幾乎所有的字體字號樣式,擁有對網頁對象和模型樣式編輯的能力[3]。從而使得網頁更加美觀,視覺效果更佳。3.JavaScriptJavaScript是一種即時編譯的編程語言。JavaScript被稱為web頁面開發腳本語言,它提供web頁面連接到不同的操作和交互式運動,提高交互式和服務,使web頁面具有吸引力。JavaScript是世界上使用人數最多的程序語言之一,幾乎每一個普通用戶的電腦上都存在JavaScript程序的影子。2.5.2后端1.SpringSpring使每個人都可以更快,更輕松,更安全地進行Java編程。Spring對速度,簡單性和生產率的關注使其成為世界上最受歡迎的Java框架。Spring靈活而全面的擴展集和第三方庫使開發人員可以構建幾乎任何可以想象的應用程序。SpringFramework的核心控制反轉(IoC)和依賴注入(DI)功能為廣泛的功能集提供了基礎。無論您是為Web構建安全的,反應性的,基于云的微服務,還是為企業構建復雜的流數據流,Spring都可以提供幫助的工具。SpringMVCSpringMVC是Spring提供給Web應用的框架設計。SpringMVC是一個典型的教科書式的mvc構架,不像Struts等都是變種或者不是完全基于mvc系統的框架。SpringMVC角色劃分清晰,分工明細,并且和Spring框架無縫結合。作為當今業界最主流的Web開發框架,SpringMVC已經成為當前最熱門的開發技能,同時也廣泛用于桌面開發領域。這套SpringMVC入門教程對SpringMVC框架進行詳細講解,內容細致、講解清晰。還包含了大量實例,幫助讀者鞏固所學知識,提高編程能力。非常適合Web開發者和想要使用SpringMVC開發基于Java的Web應用的讀者閱讀。MybatisMyBatis是一款非常出色的持久層框架,它最初來源于apache的一個在開發的項目iBatis但是后來這個項目被轉移到了谷歌,所以改名為MyBatis。MyBatis的主要功能是幫助程序員調用數據庫中的數據,MyBatis支持普通的sql語句。使用MyBatis可以幫助我們更加方便的連接數據庫,它使我們不用在敲寫復雜的JDBC代碼,我們只需要在xml文件里就可以獲得數據庫中的數據。3平臺概要設計平臺總體設計結構本階段已在系統需求分析的基礎上,對應用系統做概要設計。主要解決了實現該系統需求的程序模塊設計問題,包括該系統模塊設計、各模塊之間的接口設計、數據庫設計、角色設計、權限設計、日志設計等。在下一階段的詳細設計中,程序設計人員可參考此概要設計文檔,在概要設計對應用系統所做的模塊結構設計的基礎上,對系統進行詳細設計。在以后的軟件測試以及軟件維護階段也可參考此說明書,以便于了解在概要設計過程中所完成的各模塊設計思路或在修改時找出在本階段設計的不足或缺陷。在這次在線公交查詢平臺之中,登陸時根據所賦予的權限不同,系統將用戶劃分為普通用戶和管理員用戶。普通用戶登錄之后可以查看修改個人信息、查詢站臺信息、查詢公交車信息、查詢兩站臺之間的線路。管理員用戶登錄之后可以使用以下的功能,增加管理員的用戶、增刪改查普通用戶。增刪改查公交車信息,增刪改查站臺信息。在線公交查詢平臺總體結構設計功能圖如下所示。圖3-1在線公交查詢平臺總體結構設計功能圖3.2數據庫表設計3.2.1ER圖數據庫中劃分了五張表,分別為用戶表、管理員表、公交車信息表、站點信息表、公交車線路信息表。在線公交查詢平臺的E-R圖如下所示。圖3-2在線公交查詢平臺的E-R圖3.2.2數據表設計在軟件開發中,數據庫是十分重要的一環數據庫保存著系統所需要的消息,我們通常使用數據庫管理系統來管理數據庫。數據庫系統一般分為四個部分:數據、硬件、軟件和人員。在數據庫中使數據有條理的的儲存是數據庫系統的用處。這可以提升數據庫運行的速度,是查詢數據的效率變高,間接的提升開發軟件的效率。而如何是數據有條理的存放,最基礎的就是建表。建立數據庫中的表,我們要盡可能的遵循設計表的三大范式和無大約束。這樣可以減小數據的亢余。在設計數據庫的開始階段,我們應先根據平臺需求,定義在平臺中有哪些實體,并賦予它們屬性,然后根據實體之間的關系繪制E-R圖,再把E-R圖轉換為對應的幾張表。(1)設計用戶表,如表3-1所示。表3-1用戶表字段名類型描述idBIGINT用戶idYonghumingVARCHAR2(255)用戶賬戶MimaVARCHAR2(255)用戶密碼XingmingVARCHAR2(255)用戶姓名ShoujiInt用戶手機號AddtimeVARCHAR2(255)創建時間3.2.3表匯總表3-2匯總表序號表名描述信息1Admin管理員賬戶和個人信息2Yonghu用戶個人信息和賬戶密碼3Gongjiaochexinxi公交車信息4Zhantaixinxi站臺信息5Gongjiaochexianluxinxi公交車途徑站點3.3平臺出錯處理設計本模塊主要是針對出錯的一些信息的處理方式,如表3-2所示。表3-2出錯處理設計表序號出錯名稱平臺輸出信息處理方法1驗證碼輸入錯誤“驗證碼出錯!”進入登錄頁面。2密碼錯誤“登錄失敗!”進入登錄頁面
4平臺詳細設計4.1用戶模塊平臺乘車實現流程圖如下所示。用戶注冊之后通過注冊賬戶登錄,然后進入到在線公交查詢平臺首頁。通過左側的功能欄選擇功能。圖4-1登錄實現流程圖4.1.1用戶登錄功能用戶進入登錄界面如果用戶沒有賬戶,先注冊賬戶,然后通過輸入賬號密碼和驗證碼進入到首頁。登錄界面如下圖所示4.1.2用戶查詢站臺功能用戶進入查詢站臺界面,界面會在進入的時候從數據庫中調取所有站臺信息,同時將數據在前端界面中展示出來。4.1.3用戶查詢公交車信息功能用戶進入查詢公交車界面,界面會在進入的時候從數據庫中調取所有公交車信息,同時將數據在前端界面中展示出來。4.1.4用戶查詢兩站點之間的路徑功能用戶進入查詢兩站點之間的路徑界面之后,輸入你的出發點和目的地,傳入后端之后,后端判斷兩個輸入框不為空,然后調用example對象,使用sql語句在數據庫中找到符合的對象,若未找到返回為空。平臺乘車頁如下圖所示。圖4-2平臺乘車頁圖(3)核心代碼展示publicStringlist(Modelmodel)throwsIOException{if(!checkLogin()){returnshowError("尚未登錄","./login.do");}//Stringwhere="1=1";if(!Request.get("qishizhandian").equals("")&&!Request.get("mobanzhandian").equals("")){Listxinxi=newArrayList();intb=0;inta=0;intu=0;Zhandianxinxiqishizhandian=newZhandianxinxi();Zhandianxinximudizhandian=newZhandianxinxi();Zhandianxinxihuanchengzhandian=newZhandianxinxi();Exampleexample=newExample(Zhandianxinxi.class);Example.Criteriacriteria=example.createCriteria();criteria.andCondition(where);List<Zhandianxinxi>list=service1.select();for(inti=0;i<list.size();i++){if(request.getParameter("qishizhandian").equals(list.get(i).getZhandianmingcheng())){qishizhandian=list.get(i);a++;}if(request.getParameter("mobanzhandian").equals(list.get(i).getZhandianmingcheng())){mudizhandian=list.get(i);a++;}}if(a==2){String[]number1=qishizhandian.getZhandianchehao().split("-");String[]number2=mudizhandian.getZhandianchehao().split("-");for(inti=0;i<number1.length;i++){for(intj=0;j<number2.length;j++){if(number1[i].equals(number2[j])){xinxi.add("乘坐");xinxi.add(number1[i]+"號車");xinxi.add("從"+qishizhandian.getZhandianmingcheng()+"出發");xinxi.add("到"+mudizhandian.getZhandianmingcheng()+"下車");}}}if(xinxi.size()==0){List<Zhandianxinxi>list1=newArrayList<>();for(intk=0;k<number1.length;k++){for(intl=0;l<number2.length;l++){where="zhandianchehaoLIKE'%"+number1[k]+"%'"+"ANDzhandianchehaoLIKE'%"+number2[l]+"%'";criteria.andCondition(where);list1=service1.selectPageExample(example,1,12);if(list1.size()!=0){xinxi.add("乘坐");xinxi.add(number1[k]+"號車");xinxi.add("從"+qishizhandian.getZhandianmingcheng()+"出發");xinxi.add("到"+mudizhandian.getZhandianmingcheng()+"下車");}}}if(list1.size()!=0){for(inth=0;h<list1.size();h++){xinxi.add(list1.get(h).getZhandianmingcheng());}}}}assign("list",xinxi);}4.1.5用戶查看修改個人信息功能用戶進入個人信息頁面之后,后段通過用戶的id從數據庫中調取用戶的信息并返回到前端界面,用戶修改信息之后,前端將用戶信息傳入后端,后端調用sql語句將以前的用戶信息刪除,再插入新的用戶信息。4.1.6用戶修改密碼功能用戶進入修改密碼界面后,首先要先成功輸入兩次原密碼后才能輸入修改密碼4.2管理員模塊4.2.1增刪改查管理員信息功能管理員進入界面后,可以執行對管理員信息的增刪改查功能,如下圖所示。4.2.2增刪改查用戶信息功能管理員進入界面后,可以執行對用戶信息的增刪改查功能,如下圖所示。4.2.3增刪改查站臺信息功能管理員進入界面后,可以執行對站臺信息的增刪改查功能,如下圖所示4.2.4增刪改查公交車信息功能管理員進入界面后,可以執行對公交車信息的增刪改查功能,如下圖所示4.2.5公交線路增刪改查功能管理員進入界面后,可以執行對公交車線路信息的增刪改查功能,如下圖所示4.3分頁功能Java代碼StringviewSQL="rmationId,rmationTitle,rmationKits,rmationIssuer,"+"rmationVersion,rmationIssueTime,rmationSummary,rmationHead,"+"rmationType,rmationCommonNum,bbb.channelName,bbb.channelId,aaa.titleColor,"+"aaa.isConf,aaa.documentNo,aaa.transmitToEzsite,rmationModifyTime,aaa.orderCode,"+"rmationIssueOrg,rmationIsCommend,bbb.channelType,rmationIssuerId,"+"bbb.channelNeedCheckup,aaa.dossierStatus,bbb.channelNeedCheckupForModi,rmationValidType,"+"aaa.validBeginTime,aaa.validEndTime";if(request.getParameter("retrievalAction")!=null&&request.getParameter("retrievalAction").toString().equals("1")){viewSQL+=",rmationContent";}Stringrelation=request.getParameter("relation")==null?"":request.getParameter("relation");StringfromSQL="";if("1".equals(relation)){ fromSQL="manager.po.InformationPOaaajoinrmationChannelbbb,com.whir.ezoffice.relation.po.RelationDataPOrrr";}else{ fromSQL="manager.po.InformationPOaaajoinrmationChannelbbb";}StringwhereSQL="";StringmysqlnowString=newSimpleDateFormat("yyyy-MM-dd").format(Calendar.getInstance().getTime());//2013-09-03startif(CommonUtils.isEmpty(channelType)){ channelType="0";}if(CommonUtils.isEmpty(userDefine)){ userDefine="0";}whereSQL="whereaaa.domainId="+domainId+"andrmationStatus=0and(bbb.afficheChannelStatusisnullorbbb.afficheChannelStatus='0')";if("-1".equals(channelType)){whereSQL+="andbbb.channelType>0andbbb.userDefine=0";}else{whereSQL+="andbbb.channelType="+channelType;}if("1".equals(userDefine)){ whereSQL+="andbbb.channelType="+channelType;}MapvarMap=newHashMap();if(channelId!=null&&!"".equals(channelId)){ InformationChannelPOpo=channelBD.loadChannel(channelId); if(po.getIncludeChild()==1){ whereSQL=whereSQL+channelBD.getChannelById(channelId); }else{ whereSQL=whereSQL+"and(bbb.channelId=:channelIdoraaa.otherChannellike:channelId2)"; varMap.put("channelId",channelId); varMap.put("channelId2","%,"+channelId+",%"); }}if(title!=null&&!title.equals("")){whereSQL=whereSQL+"andrmationTitlelike:title";varMap.put("title","%"+title+"%");}if(key!=null&&!key.equals("")){whereSQL=whereSQL+"andrmationKeylike:key";varMap.put("key","%"+key+"%");}if(subtitle!=null&&!subtitle.equals("")){whereSQL=whereSQL+"andrmationSubTitlelike:subtitle";varMap.put("subtitle","%"+subtitle+"%");}if(searchIssuerName!=null&&!searchIssuerName.equals("")){ whereSQL=whereSQL+"andrmationIssuerlike:searchIssuerName";varMap.put("searchIssuerName","%"+searchIssuerName+"%");}if(searchOrgName!=null&&!searchOrgName.equals("")){ndaaa.issueOrgIdStringlike:searchOrgId";varMap.put("searchOrgId","%$"+searchOrgId+"$%");}if(append!=null&&!append.equals("")){whereSQL=whereSQL+"and(selectcount(*)from"+"manager.po.InformationAccessoryPOccc"+"whereccc.accessoryNamelike:append"+"andrmationId=rmationId)>0";varMap.put("append","%"+append+"%");}if(startDate!=null&&!startDate.equals("")){ whereSQL=whereSQL+"andrmationIssueTime>=:startDate"; varMap.put("startDate",sdf.parse(startDate+"00:00:00"));}if(endDate!=null&&!endDate.equals("")){ whereSQL=whereSQL+"andrmationIssueTime<=:endDate"; varMap.put("endDate",sdf.parse(endDate+"23:59:59"));}StringorderSQL="orderbyaaa.orderCodedesc,casewhenrmationModifyTimeisnullthenrmationIssueTimeelsermationModifyTimeenddesc";StringorderByFieldName=request.getParameter("orderByFieldName")!=null?request.getParameter("orderByFieldName"):"";StringorderByType=request.getParameter("orderByType")!=null?request.getParameter("orderByType"):""; if(orderByFieldName!=null&&!"".equals(orderByFieldName)){ orderSQL="orderbyaaa."+orderByFieldName+""+orderByType;}// StringlistType=request.getParameter("listType"); intpageSize=CommonUtils.getUserPageSize(request);// if(listType!=null&&listType.equals("1")){// pageSize=30;// } intcurrentPage=0;if(request.getParameter("startPage")!=null){ currentPage=Integer.parseInt(request.getParameter("startPage"));}if("1".equals(relation)){ StringinformationI
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國幼兒教育試題及答案
- 村辦產業面試題目及答案
- 愛情著名測試題及答案
- 單位應聘筆試試題及答案
- 產品測量考試題庫及答案
- 分析紡織行業中的技術變革對考試的作用試題及答案
- 安徽中專考試題庫及答案
- 2024廣告設計師創意策劃試題及答案
- 2024年美術設計師考試內容要點總結試題及答案
- 2024年紡織品檢驗員考試技能要求試題及答案
- 藥事管理與法規智慧樹知到答案2024年石河子衛生學校
- 人工智能訓練師理論知識考核要素細目表五級
- 2024年貴州省中考理科綜合試卷(含答案)
- 110kV變電站專項電氣試驗及調試方案
- DL-T901-2017火力發電廠煙囪(煙道)防腐蝕材料
- 籃球智慧樹知到期末考試答案章節答案2024年浙江大學
- GB/T 3428-2024架空導線用鍍鋅鋼線
- ISO 15609-1 金屬材料焊接工藝規程及評定-焊接工藝規范中文版
- MOOC 英語語法與寫作-暨南大學 中國大學慕課答案
- 2024年山東省濟南市歷下區中考二模地理試題
- 電子書 -《商業的底層邏輯》
評論
0/150
提交評論